Export (0) Print
Expand All

XmlAttributeOverrides.Item Property (Type)

Gets the object associated with the specified, base-class, type.

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

public XmlAttributes this[
	Type type
] { get; }

Parameters

type
Type: System.Type

The base class Type that is associated with the collection of attributes you want to retrieve.

Property Value

Type: System.Xml.Serialization.XmlAttributes
An XmlAttributes that represents the collection of overriding attributes.

Use this overload to return an XmlAttributes object that contains attributes for an XmlRootAttribute or XmlTypeAttribute object.

If the XmlAttributes object contains objects that override an XmlArrayAttribute, XmlArrayItemAttribute, XmlElementAttribute, XmlEnumAttribute, or XmlAttributeAttribute, you must use the overload that specifies the overridden member as well as the type.

The following example creates an XmlAttributeOverrides object, an XmlAttributes object, and an XmlRootAttribute object. The example assigns the XmlRootAttribute to the XmlRoot property of the XmlAttributes object, and adds the XmlAttributes object to the XmlAttributeOverrides object. Lastly, the example gets the XmlAttributes object by passing the Type of the serialized class to the XmlAttributeOverrides object. In this example, the Type is Group.

// This is the class that will be serialized. 
public class Group
{
   public string GroupName;
   [XmlAttribute]
   public int GroupCode;
}

public class Sample
{
public XmlSerializer CreateOverrider()
{
   // Create an XmlSerializer with overriding attributes.
   XmlAttributes attrs = new XmlAttributes();
   XmlAttributeOverrides xOver = new XmlAttributeOverrides();

   XmlRootAttribute xRoot = new XmlRootAttribute();
   // Set a new Namespace and ElementName for the root element.
   xRoot.Namespace = "http://www.cpandl.com";
   xRoot.ElementName = "NewGroup";
   attrs.XmlRoot = xRoot;

   xOver.Add(typeof(Group), attrs);

   // Get the XmlAttributes object, based on the type.
   XmlAttributes tempAttrs;
   tempAttrs = xOver[typeof(Group)];

   // Print the Namespace and ElementName of the root.
   Console.WriteLine(tempAttrs.XmlRoot.Namespace);
   Console.WriteLine(tempAttrs.XmlRoot.ElementName);

   XmlSerializer xSer = new XmlSerializer(typeof(Group), xOver);
   return xSer;
}
}
// This is the class that will be serialized.
public __gc class Group
{
public:
   String* GroupName;
   [XmlAttributeAttribute]
   int GroupCode;
};

public __gc class Sample
{
public:
   XmlSerializer* CreateOverrider()
   {
      // Create an XmlSerializer with overriding attributes.
      XmlAttributes* attrs = new XmlAttributes();
      XmlAttributeOverrides* xOver = new XmlAttributeOverrides();

      XmlRootAttribute* xRoot = new XmlRootAttribute();
      // Set a new Namespace and ElementName for the root element.
      xRoot->Namespace = S"http://www.cpandl.com";
      xRoot->ElementName = S"NewGroup";
      attrs->XmlRoot = xRoot;

      xOver->Add(__typeof(Group), attrs);

      // Get the XmlAttributes object, based on the type.
      XmlAttributes* tempAttrs;
      tempAttrs = xOver->Item[__typeof(Group)];

      // Print the Namespace and ElementName of the root.
      Console::WriteLine(tempAttrs->XmlRoot->Namespace);
      Console::WriteLine(tempAttrs->XmlRoot->ElementName);

      XmlSerializer* xSer = new XmlSerializer(__typeof(Group), xOver);
      return xSer;
   }
};

Windows 7, Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98, Windows CE, Windows Mobile for Smartphone, Windows Mobile for Pocket PC, Xbox 360, Zune

The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

.NET Framework

Supported in: 3.5, 3.0, 2.0, 1.1, 1.0

.NET Compact Framework

Supported in: 3.5, 2.0

XNA Framework

Supported in: 3.0, 2.0, 1.0

Community Additions

ADD
Show:
© 2014 Microsoft