IXMLSerializeable
Мне нужно реализовать IXMLSerializeable для настраиваемой сериализации на 2 участниках, но я хочу, чтобы остальные члены были сериализованы с сериализацией по умолчанию. Или, по крайней мере, есть ли способ для меня вызвать стандартную сериализацию на других участниках? Типы других членов - очень большие и глубоко несвязные классы, и было бы непрактично определять сериализацию каждого члена на всем протяжении цепочки.
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);
...
}
Надеюсь, это поможет,
Johannes