我需要在2个成员上实现IXMLSerializeable自定义序列化,但我希望其余成员使用默认序列化进行序列化。或者至少,我有没有办法在其他成员上调用标准序列化?其他成员的类型是非常庞大且深刻的类,并且在链中一直定义每个成员的序列化是不切实际的。
答案 0 :(得分:1)
您可以使用XmlSerializer通过标准方式序列化您的成员:
public voind WriteXml SerializeObjectToXml(XmlWriter writer)
{
...
XmlSerializer xmlSer;
xmlSer = new XmlSerializer(<yourMember>.GetType());
xmlSer.Serialize(strWriter, source);
...
}
public void ReadXml(XmlReader reader)
{
...
XmlSerializer xmlSer = new XmlSerializer(<yourMemberType>);
<yourMemberType> deserializationResult = (<yourMemberType>)xmlSer.Deserialize(reader);
...
}
希望有所帮助,
约翰