我正在寻找在WCF服务和客户端之间共享类型(实际类,而不是代理)的最佳方法。为此,我在一个单独的程序集中定义了类,这些程序包括服务和客户端引用。我在客户端生成服务引用时选择了“在所有引用的程序集中重用类型”,但是使用所有类的代理生成了References.cs。
这与this one完全相同,但我不知道如何实施已接受的解决方案。一个区别是我正在使用VS 2010 Beta 2。
导入完整的服务合同 以代码形式
或
创建自己的ClientBase派生类。这真的很容易
假设这是最好的方法,我会很感激一个很好的链接,涵盖了如何做到这一点。链接答案中概述的方法是最好的吗?
答案 0 :(得分:16)
我在同一步骤做了两件事。不确定是否有一个或两个解决了问题:
答案 1 :(得分:3)
有同样的问题,但是我忘了为客户构建DataContracts程序集,因此它生成了自己的合同。一旦我重建了组件 - 它重复使用它们。
答案 2 :(得分:1)
我对VS2010 SP1的问题是尝试使用派生自Dictionary<T,U>
且具有CollectionDataContract
属性的类。似乎VS不会重复使用这种类型......我也尝试过Eric的建议,但它没有用。