Найти тему
.Net Review

Сериализация. Работа с XML в C#

Оглавление

Подробнее о том, как реализовать XML сериализацию/десериализация в этой статье. Понимание работы с XML необходимо т.к. на сегодняшний день большое количество сервисов (Api) используют SOAP ответы.

System.Xml.Serialization

Сериализация XML — это процесс преобразования открытых свойств и полей объекта в серийный формат (в данном случае в формат XML) для хранения или транспортировки. При десериализации объект повторно создается в исходном состоянии из выходных данных XML. Сериализацию можно представить как способ сохранения состояния объекта в поток или буфер. Например, ASP.NET использует класс XmlSerializer для кодирования сообщений веб-службы XML.

Данные в объектах описываются с помощью конструкций языка программирования, например классов, полей, свойств, типов-примитивов, массивов и даже встроенного XML в форме объектов XmlElement или XmlAttribute. Вы можете создавать собственные классы, закомментировать их атрибутами или используя средство определения схемы XML (XSD. exe) для создания классов на основе существующего документа определения схемы XML (XSD). При наличии схемы XML можно запустить XSD. exe, чтобы создать набор классов, строго типизированных в схему, и добавить к ним атрибуты, которые будут соответствовать схеме при сериализации.

Пример

Для реализации примера я создал класс Animal, который содержит в себе название и тип животного.

-2

Здесь желательно указать атрибут Serializable. В сериализацию будут включены только public свойства.

Далее для примера я создал коллекцию, которая содержит животных.

-3

На данной картинке отображен код сериализации в файл и десериализации из файла.

Результат: файл animals.xml.

-4

Спасибо за внимание!

Телеграмм канал: https://t.me/dotnetreview

Источники: XML Serialization Microsoft

Наука
7 млн интересуются