Поделиться через


Атрибуты управления XML-сериализацией

Для управления способом, с помощью которого XmlSerializer сериализует или десериализует экземпляр класса, к классам и членам класса можно применять атрибуты, указанные в следующей таблице. Дополнительные сведения о том, как эти атрибуты управляют сериализацией XML, см. в разделе Управление XML-сериализацией с использованием атрибутов.

Эти атрибуты можно также использовать для управления литеральным стилем сообщений SOAP, генерируемых XML-веб-службой. Дополнительные сведения о применении этих атрибутов для существующего метода XML-веб-служб см. в разделе XML-сериализация с использованием XML-веб-служб.

Дополнительные сведения об атрибутах см. в разделе Extending Metadata Using Attributes.

Атрибут Применимость Что определяет

XmlAnyAttributeAttribute

Открытое поле, свойство, параметр или возвращаемое значение, которое возвращает массив объектов XmlAttribute.

Во время десериализации массив будет заполняться объектами XmlAttribute, представляющими все атрибуты XML, не известные для схемы.

XmlAnyElementAttribute

Открытое поле, свойство, параметр или возвращаемое значение, которое возвращает массив объектов XmlElement.

Во время десериализации массив заполняется объектами XmlElement, представляющими все элементы XML, не известные для схемы.

XmlArrayAttribute

Открытое поле, свойство, параметр или возвращаемое значение, которое возвращает массив сложных объектов.

Члены массива создаются как члены массива XML.

XmlArrayItemAttribute

Открытое поле, свойство, параметр или возвращаемое значение, которое возвращает массив сложных объектов.

Производные типы, которые могут быть размещены в массиве. Обычно используется совместно с XmlArrayAttribute.

XmlAttributeAttribute

Открытое поле, свойство, параметр или возвращаемое значение.

Член должен быть сериализован как атрибут XML.

XmlChoiceIdentifierAttribute

Открытое поле, свойство, параметр или возвращаемое значение.

Член может быть однозначно определен перечислением.

XmlElementAttribute

Открытое поле, свойство, параметр или возвращаемое значение.

Поле или свойство сериализуется как элемент XML.

XmlEnumAttribute

Открытое поле, идентификатор перечисления.

Имя элемента члена перечисления.

XmlIgnoreAttribute

Открытые свойства и поля.

При сериализации содержащего класса свойство или поле должно игнорироваться.

XmlIncludeAttribute

Объявления открытых производных классов и возвращаемые значения открытых методов для документов WSDL.

При создании схем класс должен быть включен (чтобы его можно было распознать во время сериализации).

XmlRootAttribute

Объявления открытых классов.

Управляет XML-сериализацией конечного объекта атрибута как корневого XML-элемента. Используйте атрибут, чтобы подробнее указать пространство имен и имя элемента.

XmlTextAttribute

Открытые свойства и поля.

Свойство или поле сериализуется как текст XML.

XmlTypeAttribute

Объявления открытых классов.

Имя и пространство имен типа XML.

Кроме этих атрибутов, которые располагаются в пространстве имен System.Xml.Serialization, к полю можно применять атрибут System.ComponentModel.DefaultValueAttribute. DefaultValueAttribute задает значение, которое автоматически назначается члену, если значение не указано.

Описание управления сериализацией кодированных элементов SOAP XML см. в разделе Атрибуты управления SOAP-сериализацией с кодировкой.

См. также

Задачи

Как указать имя альтернативного элемента для потока XML
Как сериализовать объект
Как десериализовать объект

Справочник

XmlSerializer

Основные понятия

Управление XML-сериализацией с использованием атрибутов

Другие ресурсы

XML- и SOAP-сериализация