Export (0) Print
Expand All

Attributes That Control XML Serialization

You can apply the attributes in the following table to classes and class members to control the way in which the XmlSerializer serializes or deserializes an instance of the class. To understand how these attributes control XML serialization, see Controlling XML Serialization Using Attributes.

These attributes can also be used to control the literal style SOAP messages generated by an XML Web service. For more information about applying these attributes to an XML Web services method, see XML Serialization with XML Web Services.

For more information about attributes, see Extending Metadata Using Attributes.

AttributeApplies toSpecifies
XmlAnyAttributeAttributePublic field, property, parameter, or return value that returns an array of XmlAttribute objects.When deserializing, the array will be filled with XmlAttribute objects that represent all XML attributes unknown to the schema.
XmlAnyElementAttributePublic field, property, parameter, or return value that returns an array of XmlElement objects.When deserializing, the array is filled with XmlElement objects that represent all XML elements unknown to the schema.
XmlArrayAttributePublic field, property, parameter, or return value that returns an array of complex objects.The members of the array will be generated as members of an XML array.
XmlArrayItemAttributePublic field, property, parameter, or return value that returns an array of complex objects.The derived types that can be inserted into an array. Usually applied in conjunction with an XmlArrayAttribute.
XmlAttributeAttributePublic field, property, parameter, or return value.The member will be serialized as an XML attribute.
XmlChoiceIdentifierAttributePublic field, property, parameter, or return value.The member can be further disambiguated by using an enumeration.
XmlElementAttribute Public field, property, parameter, or return value.The field or property will be serialized as an XML element.
XmlEnumAttributePublic field that is an enumeration identifier.The element name of an enumeration member.
XmlIgnoreAttributePublic properties and fields.The property or field should be ignored when the containing class is serialized.
XmlIncludeAttributePublic derived class declarations, and return values of public methods (for Web Services Description Language (WSDL) documents).The class should be included when generating schemas (to be recognized when serialized).
XmlRootAttributePublic class declarations.Controls XML serialization of the attribute target as an XML root element. Use the attribute to further specify the namespace and element name.
XmlTextAttributePublic properties and fields.The property or field should be serialized as XML text.
XmlTypeAttributePublic class declarations.The name and namespace of the XML type.

In addition to these attributes, which are all found in the System.Xml.Serialization namespace, you can also apply the System.ComponentModel.DefaultValueAttribute attribute to a field. The DefaultValueAttribute sets the value that will be automatically assigned to the member if no value is specified.

To control encoded SOAP XML serialization, see Attributes That Control Encoded SOAP Serialization.

See Also

XML and SOAP Serialization | XmlSerializer | Controlling XML Serialization Using Attributes | Overriding XML Serialization

Show:
© 2014 Microsoft