2011-11-25 110 views
5

这可能是一个非常简单的类。我希望在[DataContract]类中创建一些代码,用于在WCF服务和消费应用程序之间传递信息。共享[DataContract]类的便携式类库

我创建了一个新的便携式类库项目,并在其中创建我的[DataContract]类。它非常简单 - 它有几个简单的属性(主要是字符串)。我在我的WCF服务中添加了对DLL的引用,并重新发布它。然后我从我的消费者项目中删除了服务参考并重新添加。它增加了罚款,没有问题。

问题是当我想要使用它。看,这个类型被称为'Eval'。一些WCF方法返回这个'Eval'类型。所以我在我的服务引用中的Reference.cs文件中有'Eval'的序列化版本。显然这不包含我正在寻找的方法,因为它只是序列化版本。我也可以将dll添加到客户端项目中,但是在两个名称空间中有两个不同的Eval对象,并且只有reference.cs中的一个可以从服务调用返回。

那么,如何...呃...合并两个?因此,从WCF服务调用返回的Eval对象也可以访问有问题的方法?

感谢您的阅读,并保持在这些道路上的安全。

回答

5

在生成服务引用您可以指定哪些类应该被重复使用,应该从服务 enter image description here

+1

+1很好的解决方案:) – Venemo

+0

嗨会产生哪些类存在。我可能有点紧张,但你能否详细说明一下?我的意思是我知道你正在谈论的部分,你可以从服务中重用dll,但我不确定究竟该做什么。我确实有'EvalPortableClassLibrary'(项目名称)的勾选框。我假设,因为默认是重用所有,我想打勾除EvalPortableClassLibrary以外的所有。如果我这样做,它仍然会在References.cs中为我提供一个公共部分类Eval,它将它用作Eval的默认用法。我误解了吗? – user738383

+0

删除您的参考并再次添加,不包括您的装配。有时它不会更新参考 –