为什么WCF中的DataMember不能返回Type?

时间:2009-07-10 17:08:44

标签: wcf

试着让它运转起来,没有运气:

[DataMember]
public Type ParameterType { get; set;}

2 个答案:

答案 0 :(得分:16)

Web服务通常是跨平台的。 Java程序使用.NET的System.Type做什么?

此外,您希望序列化哪个类型的类型,以及您希望如何反序列化?

答案 1 :(得分:10)

返回System.Type的任何字段或属性都不能使用WCF进行序列化,因为在运行时,对象的实际类型为System.RuntimeType,标记为内部,因此无法自动序列化DataContractSerializer,只能序列化可公开访问的类型。

但是,您可以在IXmlSerializer周围编写一个System.Type包装,它会提取您要传输的信息。