我是WCF的新手,我可以在一个服务合同下添加多个<OperationContract()>
,但是,无法解决有关如何在单个合同下添加多个DataContracts的任何信息。
问题是:使用一个服务合同(WPF中的单个服务引用)可以访问许多过程,但是,现在我需要在WPF中创建许多服务引用(每个数据契约一个),这很糟糕选择我相信。
我的类不是继承的,它们是独立的。
如果有选项可以在一个服务引用下获得所有类别(数据合同),或者如果可以有一个替代程序,请提供建议。
谢谢。
答案 0 :(得分:0)
一个常见的事情是在客户端上创建自己的代理,服务和数据协定,而不是使用服务引用选项。您仍需要在服务更改时手动更新内容,但是您可以控制为数据和服务合同创建的类和接口。
如果您同时拥有服务端和客户端,那么您还可以共享类型(通过引用带有数据和服务合同的dll)。如果您不拥有服务端,则可以在客户端中定义自己的接口和数据协定。只要它们与服务合同匹配,事情就会奏效。您可以使用add reference或wsdl.exe实用程序来生成服务和数据协定。
如果使用“添加服务引用”,则可以选中一个选项以使用引用的程序集中的类型。只要您引用了服务和数据协定程序集,添加服务引用就会重用这些类型。