使用 C# .NET 2.0,我有一个复合数据类,它确实具有[Serializable]属性。我正在创建一个XMLSerializer类并将其传递给构造函数:
[Serializable]
XMLSerializer
XmlSerializer serializer = new XmlSerializer(typeof(DataClass));
我得到一个例外说:
反映类型有错误。
在数据类内部还有另一个复合对象。这是否也需要具有[Serializable]属性,或者通过将其放在顶部对象上,它是否递归地将其应用于内部的所有对象?
看看你得到的内部异常。它会告诉您在序列化时遇到问题的字段/属性。
您可以通过用属性装饰字段/属性来从 xml 序列化中排除它们[XmlIgnore]。
[XmlIgnore]
XmlSerializer不使用该[Serializable]属性,所以我怀疑这是问题所在。
XmlSerializer