WCF使用原始域对象而不是生成的代理

WCF使用原始域对象而不是生成的代理,wcf,object,proxy,dns,Wcf,Object,Proxy,Dns,我有一个客户端网站、一个WCF服务和一个域对象库(.cproj) 我希望客户端直接使用我的域对象库,而不是域对象的代理生成版本。有一种简单的方法可以做到这一点吗?在客户端项目中包括库项目或DLL,而不是创建服务引用。您可以生成服务引用来创建调用服务所需的所有WCF配置,但不要使用生成的代理或数据类型(例如reference.cs中的代码)-直接使用包含的DLL中的类型。您可能需要自己编写客户机,但这很简单,基本上可以从服务引用中生成的客户机复制 也就是说,在客户机和服务之间直接共享数据类型打破了

我有一个客户端网站、一个WCF服务和一个域对象库(.cproj)


我希望客户端直接使用我的域对象库,而不是域对象的代理生成版本。有一种简单的方法可以做到这一点吗?

在客户端项目中包括库项目或DLL,而不是创建服务引用。您可以生成服务引用来创建调用服务所需的所有WCF配置,但不要使用生成的代理或数据类型(例如reference.cs中的代码)-直接使用包含的DLL中的类型。您可能需要自己编写客户机,但这很简单,基本上可以从服务引用中生成的客户机复制


也就是说,在客户机和服务之间直接共享数据类型打破了面向服务的体系结构模式。现在,您的客户机和服务都依赖于同一个DLL,而不是客户机仅仅依赖于一个服务。

在您的客户机项目中包含对DLL的引用。然后添加一个服务引用。添加服务引用时,可以选择使用dll中的类型,而不在references.cs中创建它们