Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/wcf/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# WCF没有';t更新代理_C#_Wcf - Fatal编程技术网

C# WCF没有';t更新代理

C# WCF没有';t更新代理,c#,wcf,C#,Wcf,我无法从wcf服务更新代理。我有一个operationcontract和一个datacontract的接口,在我添加一个新operationcontract之前,一切都正常…当我尝试从客户端更新服务时,应用程序生成的代理没有新的operationcontract。我尝试使用svcutil,但没有成功,结果相同。 知道怎么了吗 [ServiceContract] public interface ICreationService { [OperationContract] bool

我无法从wcf服务更新代理。我有一个operationcontract和一个datacontract的接口,在我添加一个新operationcontract之前,一切都正常…当我尝试从客户端更新服务时,应用程序生成的代理没有新的operationcontract。我尝试使用svcutil,但没有成功,结果相同。 知道怎么了吗

[ServiceContract] 
public interface ICreationService 
{ 
    [OperationContract] bool CreateTicket(Ticket ticket); 
    [OperationContract] bool CreateTicket(Ticket ticket,bool asd);
    [OperationContract] IEnumerable<Ticket> GetTickets(); 
} 

[DataContract] 
public class Ticket 
{ 
    [DataMember] 
    public string Name { get; set; } 

    [DataMember] 
    public int Severity { get; set; } 

    [DataMember] 
    public string Description { get; set; } 
} 
[服务合同]
公共接口ICreationService
{ 
【运营合同】bool CreateTicket(票证);
【运营合同】bool CreateTicket(票证,bool asd);
[OperationContract]IEnumerable GetTickets();
} 
[数据合同]
公务舱票
{ 
[数据成员]
公共字符串名称{get;set;}
[数据成员]
公共int严重性{get;set;}
[数据成员]
公共字符串说明{get;set;}
} 

WCF不允许使用多个同名方法(无重载)。您需要更改其中一个
CreateTicket
方法的名称,您可以向方法添加名称属性,如下所示:

 [OperationContract(Name="CreateTicketNewName")]
 bool CreateTicket(Ticket ticket); 
编辑


尝试返回具体类型而不是接口。这上面有一个类似的线程

你能发布你添加的新合同和你的绑定吗?[ServiceContract]公共接口ICreationService{[OperationContract]bool CreateTicket(票证);[OperationContract]bool CreateTicket(票证,bool asd);//[OperationContract]IEnumerable GetTickets();}[DataContract]公共类票证{[DataMember]公共字符串名称{get;set;}[DataMember]公共int严重性{get;set;}[DataMember]公共字符串描述{get;set;}为了便于人们帮助您,您必须向我们展示您的web.config、更新的合同,以及在web浏览器中浏览服务时看到的异常感谢您的提示,但即使我删除了它,方法IEnumerable GetTickets()也不会反映在代理中…此接口是在代理中生成的:[System.CodeDom.Compiler.GeneratedCodeAttribute](“System.ServiceModel”、“4.0.0.0”)][System.ServiceModel.ServiceContractAttribute(ConfigurationName=“ServiceReference2.ICreationService”)]公共接口ICreationService{[System.ServiceModel.OperationContractAttribute(Action=”,ReplyAction=“bool CreateTicket(Web.ServiceReference2.Ticket Ticket);}…仍然没有方法GetTickets()…知道吗?我lost@user1275513,修改您的GetTickets()为了返回一个具体的类而不是IEnumerableI,我尝试将其更改为List,但仍然不起作用…所以我决定创建新的服务,但现在我无法在主机运行时获取endpoint…我的项目中可能存在全局错误