2014-01-29 2 views
0

В .NET Framework 4.5, каковы параметры сериализации/десериализации определенного набора классов в XML и из них и каковы их соответствующие преимущества/недостатки?XML (De-) Сериализация в .NET Framework 4.5

Может быть ответ, который применяется к фреймворку 4.5, но я не смог найти его с поиском.

ответ

0

Вы имеете в виду, какие у вас варианты по сравнению со старыми версиями .NET fwk? Есть и, как я помню, всегда был класс System.Xml.Serialization.XmlSerializer, который позволяет сериализовать/десериализовать любые вызовы в/из потока. Вы можете украсить сериализованные классы атрибутами для настройки выходного XML.

+0

Я прошу всех вариантов в 4.5. Существует, по крайней мере, XMLSerializer, DataContractSerializer и всегда популярный «roll-your-own». Я спрашиваю, каковы их соответствующие преимущества, а также какие существуют другие альтернативы, которые могут включать популярные сторонние библиотеки. – Peter

+1

DataContractSerializer существует с момента .net 3, так что это тоже ничего нового. В любом случае основные отличия между XmlSerializer и DataContractSerializer заключаются в том, что, во-первых, DataContractSerializer не поддерживает атрибуты (что делает его бесполезным для общего использования), а во-вторых, он сериализует только свойства, отмеченные атрибутом DataMember, в то время как XmlSerializer сериализует все общедоступные свойства, за исключением те, которые отмечены атрибутом XmlIgnore. –

Смежные вопросы