XmlRootAttribute Class

[ This article is for Windows Phone 8 developers. If you’re developing for Windows 10, see the latest documentation. ]

Controls XML serialization of the attribute target as an XML root element.

Inheritance Hierarchy


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


<AttributeUsageAttribute(AttributeTargets.Class Or AttributeTargets.Enum Or AttributeTargets.Interface Or AttributeTargets.ReturnValue Or AttributeTargets.Struct)> _
Public Class XmlRootAttribute _
    Inherits Attribute
public class XmlRootAttribute : Attribute

The XmlRootAttribute type exposes the following members.


Name Description
XmlRootAttribute()()() Initializes a new instance of the XmlRootAttribute class.
XmlRootAttribute(String) Initializes a new instance of the XmlRootAttribute class and specifies the name of the XML root element.



Name Description
DataType Gets or sets the XSD data type of the XML root element.
ElementName Gets or sets the name of the XML element that is generated and recognized by the XmlSerializer class's Serialize and Deserialize methods, respectively.
IsNullable Gets or sets a value that indicates whether the XmlSerializer must serialize a member that is set to nullNothingnullptra null reference (Nothing in Visual Basic) into the xsi:nil attribute set to true.
Namespace Gets or sets the namespace for the XML root element.



Name Description
Equals Infrastructure. Returns a value that indicates whether this instance is equal to a specified object. (Inherited from Attribute.)
Finalize Allows an object to try to free resources and perform other cleanup operations before the Object is reclaimed by garbage collection. (Inherited from Object.)
GetHashCode Returns the hash code for this instance. (Inherited from Attribute.)
GetType Gets the Type of the current instance. (Inherited from Object.)
Match When overridden in a derived class, returns a value that indicates whether this instance equals a specified object. (Inherited from Attribute.)
MemberwiseClone Creates a shallow copy of the current Object. (Inherited from Object.)
ToString Returns a string that represents the current object. (Inherited from Object.)



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

You can apply the XmlRootAttribute to a class, structure, enumeration, or interface. You can also apply the attribute to the return value of an XML Web service method.

Every XML document must have a single root element that contains all the other elements. The XmlRootAttribute allows you to control how the XmlSerializer generates the root element by setting certain properties. For example, specify the name of the generated XML element by setting the ElementName property.


You can use the word XmlRoot in your code instead of the longer XmlRootAttribute.

Version Information

Windows Phone OS

Supported in: 8.1, 8.0, 7.1, 7.0


Windows Phone

Thread Safety

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

See Also


System.Xml.Serialization Namespace