WCF中的渠道工厂

时间:2010-06-04 10:30:34

标签: wcf channelfactory

大家好我是WCF的新手我想知道我是否使用渠道工厂,如果我在服务合同中做出任何更改是否更改将在客户端系统中自动更新???如果更改自动更新如何????

1 个答案:

答案 0 :(得分:2)

不,通道工厂不会自动更新 - 您必须更新服务引用(如果您使用Visual Studio的添加服务引用添加它),或者您需要从WSDL / XSD或服务重新创建客户端代理URL。

更新:当然,如果您在服务和客户端之间的程序集中共享服务和数据合同,那么当然您可以在客户端更新时更新有新的服务合同DLL ...

如果要启用此服务和数据协定的共享,请使用以下设置:

    合同程序集中的
  • ,拥有所有服务合同(接口)和数据合同(数据类型)

  • 在您的服务实施中,引用Contracts汇编并实施服务合同

  • 客户端代理中的
  • 也引用共享Contracts程序集,并使用ChannelFactory<T>为服务合同接口T创建通道工厂。

通过此设置,无论何时对共享合同程序集进行更改,服务实现和客户端代理都将“获取”这些更改,例如:他们总是最新并使用相同的服务和数据合同