从WCF服务返回服务器端类

时间:2012-04-30 15:38:33

标签: c# wcf silverlight

我认为这是一个奇怪的问题,我在服务器端定义了一些类,然后通过服务引用引用,其中两个正在按原样运行。我已经从服务接口中指定了已知类型:

[ServiceKnownType(typeof(Obj))]
[ServiceKnownType(typeof(DigitalObject))]
[ServiceKnownType(typeof(AnalogueObject))]
[ServiceKnownType(typeof(AttributeType))]
[ServiceKnownType(typeof(AttributeData))]

从silverlight应用程序中,我通过以下方式引用该类:

private ServiceReference.AttributeData commonData = new ServiceReference.AttributeData();

这样工作正常,但是我对另一个类做了完全相同的事情,唯一的区别是名为AnalogueObjectDigitalObject的类派生自类型{{1}的类}。你知道发生了什么吗?命名空间都是一样的,我已经重建了Web解决方案并更新了服务引用。

示例类:

Obj

1 个答案:

答案 0 :(得分:1)

如果您要在服务器和客户端之间传递复杂类型,则应使用DataContract属性对其进行标记,并使用DataMember标记其属性。这将告诉.NET序列化对象并将其传递给SOAP消息。