Export (0) Print
Expand All
Information
The topic you requested is included in another documentation set. For convenience, it's displayed below. Choose Switch to see the topic in its original location.

XmlArrayItemAttribute Class

July 28, 2014

Specifies the derived types that the XmlSerializer can place in a serialized array.

System.Object
  System.Attribute
    System.Xml.Serialization.XmlArrayItemAttribute

Namespace:  System.Xml.Serialization
Assembly:  System.Xml (in System.Xml.dll)

[AttributeUsageAttribute(AttributeTargets.Field|AttributeTargets.Parameter|AttributeTargets.Property|AttributeTargets.ReturnValue, AllowMultiple = true)]
public class XmlArrayItemAttribute : Attribute

The XmlArrayItemAttribute type exposes the following members.

  NameDescription
Public methodXmlArrayItemAttribute()Initializes a new instance of the XmlArrayItemAttribute class.
Public methodXmlArrayItemAttribute(String)Initializes a new instance of the XmlArrayItemAttribute class and specifies the name of the XML element generated in the XML document.
Public methodXmlArrayItemAttribute(Type)Initializes a new instance of the XmlArrayItemAttribute class and specifies the Type that can be inserted into the serialized array.
Public methodXmlArrayItemAttribute(String, Type)Initializes a new instance of the XmlArrayItemAttribute class and specifies the name of the XML element generated in the XML document and the Type that can be inserted into the generated XML document.
Top

  NameDescription
Public propertyDataTypeGets or sets the XML data type of the generated XML element.
Public propertyElementNameGets or sets the name of the generated XML element.
Public propertyFormGets or sets a value that indicates whether the name of the generated XML element is qualified.
Public propertyIsNullableGets or sets a value that indicates whether the XmlSerializer must serialize a member as an empty XML tag with the xsi:nil attribute set to true.
Public propertyNamespaceGets or sets the namespace of the generated XML element.
Public propertyNestingLevelGets or sets the level in a hierarchy of XML elements that the XmlArrayItemAttribute affects.
Public propertyTypeGets or sets the type allowed in an array.
Top

  NameDescription
Public methodEqualsInfrastructure. Returns a value that indicates whether this instance is equal to a specified object. (Inherited from Attribute.)
Protected methodFinalizeAllows an object to try to free resources and perform other cleanup operations before the Object is reclaimed by garbage collection. (Inherited from Object.)
Public methodGetHashCodeReturns the hash code for this instance. (Inherited from Attribute.)
Public methodGetTypeGets the Type of the current instance. (Inherited from Object.)
Public methodMatchWhen overridden in a derived class, returns a value that indicates whether this instance equals a specified object. (Inherited from Attribute.)
Protected methodMemberwiseCloneCreates a shallow copy of the current Object. (Inherited from Object.)
Public methodToStringReturns a string that represents the current object. (Inherited from Object.)
Top

The XmlArrayItemAttribute belongs to a family of attributes that controls how the XmlSerializer serializes or deserializes an object.

You can apply the XmlArrayItemAttribute to any public read/write member that returns an array, or provides access to one. For example, a field that returns an array of objects, a collection, or any class that implements the IEnumerable interface.

The XmlArrayItemAttribute supports polymorphism—in other words, it allows the XmlSerializer to add derived objects to an array. For example, suppose a class named Mammal is derived from a base class named Animal. Further suppose that a class named MyAnimals contains a field that returns an array of Animal objects. To allow the XmlSerializer to serialize both the Animal and Mammal type, apply the XmlArrayItemAttribute to the field twice, each time specifying one of the two acceptable types.

NoteNote:

You can apply multiple instances of the XmlArrayItemAttribute or XmlElementAttribute to specify types of objects that can be inserted into the array.

NoteNote:

The serialization of a field or property that returns an interface or array of interfaces is not supported.

NoteNote:

You can use the word XmlArrayItem in your code instead of the longer XmlArrayItemAttribute.

Windows Phone OS

Supported in: 8.1, 8.0, 7.1, 7.0

Windows Phone

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Show:
© 2014 Microsoft