XML сериализация в Silverlight 4 - PullRequest
0 голосов
/ 05 октября 2011

Допустим, у меня есть следующие классы:

public class Entity { ... }

public class MyEntity : Entity 
{
}

MyEntity может быть сложным объектом, который имеет список Entity в качестве своего свойства. Я хотел бы сериализовать MyEntity в XML, но только свойства базового класса, т.е. объекта Entity. Я пытался использовать DataContractSerializer с DataMemberAttribute, но, кажется, начиная в .NET 3.5 сериализуются все открытые свойства, даже если DataMemberAttribute не применяется.

Какие у меня варианты?

1 Ответ

0 голосов
/ 06 октября 2011

Хорошо, ответь на мой вопрос.Мое текущее решение - реализовать IXmlSerializable в базовом классе (класс Entity) и не реализовывать этот интерфейс для производных классов (MyEntity).Затем XmlSerializer сериализует открытые свойства только базового класса.Сложная часть реализует IXmlSerializable;особенно метод ReadXml ().Мне был полезен ответ Пола Александра (не выбранный ответ!) В следующем посте: Чтение XML с XmlReader в C #

...