我有一个客户端网站,一个WCF服务和一个域对象库(.cproj)。
我希望客户端直接使用我的域对象库,而不是代理生成的域对象版本。有一种简单的方法吗?
答案 0 :(得分:2)
在客户端项目中包含对dll的引用。然后添加服务引用。添加服务引用时,可以选择使用dll中的类型,而不是在references.cs中创建它们。
答案 1 :(得分:0)
在您的客户端项目中包含库项目或DLL,而不是创建服务引用。您可以生成服务引用以创建调用服务所需的所有WCF配置,但只是不使用生成的代理或数据类型(例如Reference.cs中的代码) - 直接使用包含的DLL中的类型。您可能需要自己编写客户端,但这很简单,基本上可以从服务引用中生成的客户端进行复制。
也就是说,直接在客户端和服务之间共享数据类型会破坏面向服务的体系结构模式。现在,您的客户端和服务都依赖于相同的DLL,而不是仅依赖于服务的客户端。