我有一个包含3个项目的Visual Studio2010解决方案: Shared,其中包含一个名为ServiceResult的类。类使用DataContract(IsReference=true)属性,每个属性都使用DataMember属性。下一个项目是一个WCF服务,它有一个返回ServiceResult类型的方法。第三个项目是一个命令行应用程序,其中包含对WCF服务的服务引用。这也是对共享项目的引用。
无论我做什么,如果ServiceResult类上有DataContract属性,我就不能在控制台应用程序中获得代理客户机。只要我将DataContract属性替换为Serializable属性,并刷新我的服务引用,我就可以在命令行应用程序中获得代理客户端。
我想让这个类具有DataContract属性,因为我想利用IsReference属性来维护对象引用。
以前有没有人见过这样的东西,如果有,你是如何解决的?
谢谢!
我应该补充说,ServiceResult类是一个泛型类型:
[DataContract(IsReference=true)]
public class ServiceReferences<TReturn>{...}发布于 2011-04-21 08:56:21
实际上,他,我没有意识到我不能序列化泛型类型,同时引用相同的自定义类型客户端。客户端代理希望使用名为ServiceResultOfInt的类型,但客户端代码使用的是ServiceResult。问题解决了。不过还是谢谢你!
https://stackoverflow.com/questions/5722436
复制相似问题