Dieser Artikel wurde maschinell übersetzt. Wenn Sie die englische Version des Artikels anzeigen möchten, aktivieren Sie das Kontrollkästchen Englisch. Sie können den englischen Text auch in einem Popupfenster anzeigen, indem Sie den Mauszeiger über den Text bewegen.
Übersetzung
Englisch

XmlAttributeAttribute-Klasse

 

Veröffentlicht: Oktober 2016

Gibt an, dass der XmlSerializer den Klassenmember als XML-Attribut serialisieren muss.

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

System.Object
  System.Attribute
    System.Xml.Serialization.XmlAttributeAttribute

[AttributeUsageAttribute(AttributeTargets.Property | AttributeTargets.Field | AttributeTargets.Parameter | AttributeTargets.ReturnValue)]
public class XmlAttributeAttribute : Attribute

NameBeschreibung
System_CAPS_pubmethodXmlAttributeAttribute()

Initialisiert eine neue Instanz der XmlAttributeAttribute-Klasse.

System_CAPS_pubmethodXmlAttributeAttribute(String)

Initialisiert eine neue Instanz der XmlAttributeAttribute -Klasse und gibt den Namen des generierten XML-Attributs.

System_CAPS_pubmethodXmlAttributeAttribute(String, Type)

Initialisiert eine neue Instanz der XmlAttributeAttribute-Klasse.

System_CAPS_pubmethodXmlAttributeAttribute(Type)

Initialisiert eine neue Instanz der XmlAttributeAttribute-Klasse.

NameBeschreibung
System_CAPS_pubpropertyAttributeName

Ruft ab oder legt den Namen der XML-Attributs.

System_CAPS_pubpropertyDataType

Ruft ab oder legt den XSD-Datentyp des von generierten XML-Attributs der XmlSerializer.

System_CAPS_pubpropertyForm

Ruft ab oder legt einen Wert, der angibt, ob der XML-Attributname vom generiert die XmlSerializer gekennzeichnet ist.

System_CAPS_pubpropertyNamespace

Ruft ab oder legt den XML-Namespace des XML-Attributs.

System_CAPS_pubpropertyType

Ruft ab oder legt den komplexen Typ des XML-Attributs.

System_CAPS_pubpropertyTypeId

Ruft bei Implementierung in einer abgeleiteten Klasse einen eindeutigen Bezeichner für dieses Attribute ab.(Geerbt von „Attribute“.)

NameBeschreibung
System_CAPS_pubmethodEquals(Object)

Diese API unterstützt die Produkt Infrastruktur und sollte nicht direkt aus dem Code verwendet werden. Gibt einen Wert zurück, der angibt, ob diese Instanz gleich einem angegebenen Objekt ist.(Geerbt von „Attribute“.)

System_CAPS_protmethodFinalize()

Gibt einem Objekt Gelegenheit, Ressourcen freizugeben und andere Bereinigungen durchzuführen, bevor es von der Garbage Collection freigegeben wird. (Geerbt von „Object“.)

System_CAPS_pubmethodGetHashCode()

Gibt den Hashcode für diese Instanz zurück.(Geerbt von „Attribute“.)

System_CAPS_pubmethodGetType()

Ruft den Type der aktuellen Instanz ab.(Geerbt von „Object“.)

System_CAPS_pubmethodIsDefaultAttribute()

Gibt beim Überschreiben in einer abgeleiteten Klasse an, ob der Wert der Instanz der Standardwert für die abgeleitete Klasse ist.(Geerbt von „Attribute“.)

System_CAPS_pubmethodMatch(Object)

Ruft beim Überschreiben in einer abgeleiteten Klasse gibt einen Wert, der angibt, ob diese Instanz gleich ein angegebenen Objekt ist.(Geerbt von „Attribute“.)

System_CAPS_protmethodMemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.(Geerbt von „Object“.)

System_CAPS_pubmethodToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.(Geerbt von „Object“.)

NameBeschreibung
System_CAPS_pubinterfaceSystem_CAPS_privmethod_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

Ordnet eine Reihe von Namen einer entsprechenden Reihe von Dispatchbezeichnern zu.(Geerbt von „Attribute“.)

System_CAPS_pubinterfaceSystem_CAPS_privmethod_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Ruft die Typinformationen für ein Objekt ab, mit deren Hilfe die Typinformationen für eine Schnittstelle abgerufen werden können.(Geerbt von „Attribute“.)

System_CAPS_pubinterfaceSystem_CAPS_privmethod_Attribute.GetTypeInfoCount(UInt32)

Ruft die Anzahl der Schnittstellen mit Typinformationen ab, die von einem Objekt bereitgestellt werden (0 oder 1).(Geerbt von „Attribute“.)

System_CAPS_pubinterfaceSystem_CAPS_privmethod_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Stellt den Zugriff auf von einem Objekt verfügbar gemachte Eigenschaften und Methoden bereit.(Geerbt von „Attribute“.)

Die XmlAttributeAttribute gehört zu einer Familie von Attributen, die steuert, wie die XmlSerializer Serialisieren bzw. Deserialisieren eines Objekts. Eine vollständige Liste ähnlicher Attribute finden Sie unter Attribute zur Steuerung der XML-Serialisierung.

Bei Anwendung auf ein öffentliches Feld oder eine Eigenschaft, die XmlAttributeAttribute informiert den XmlSerializer den Member als XML-Attribut serialisiert. In der Standardeinstellung die XmlSerializer öffentliche Felder und Eigenschaften als XML-Elemente serialisiert.

Sie zuweisen können die XmlAttributeAttribute nur öffentliche Felder oder öffentliche Eigenschaften, die einen Wert (oder ein Array von Werten) zurückgeben, eine XML-Schema Definition Language (XSD) einfachen Typen zugeordnet werden können (einschließlich aller integrierten Datentypen aus der XSD abgeleitete anySimpleType Typ). Die möglichen Typen enthalten, die den einfachen XSD-Typen auf, einschließlich zugeordnet werden können Guid, Char, und Enumerationen. Finden Sie unter der DataType -Eigenschaft für eine Liste von XSD-Typen und deren abgeleiteter-Datentypen zugeordnet.

Es gibt zwei spezielle Attribute, die mit festgelegt werden können die XmlAttributeAttribute : die xml:lang (gibt die Sprache) und xml:space (gibt an, wie Leerraum behandelt) Attribute. Diese Attribute sollen Informationen übermittelt, die nur für eine Anwendung, die XML-Verarbeitung relevant sind. Beispiele für diese Einstellung werden im folgenden Code dargestellt.

[XmlAttribute("xml:lang")]
 public string Lang;
 // Set this to 'default' or 'preserve'.
 [XmlAttribute("space", 
 Namespace = "http://www.w3.org/XML/1998/namespace")]
 public string Space 
 [Visual Basic]
 <XmlAttribute("xml:lang")> _
 Public Lang As String 
 ' Set this to 'default' or 'preserve'.
 <XmlAttribute("space", _
 Namespace:= "http://www.w3.org/XML/1998/namespace")> _
 Public Space As String

Weitere Informationen zum Verwenden von Attributen finden Sie unter Erweitern von Metadaten mithilfe von Attributen.

System_CAPS_noteHinweis

Sie können das Wort XmlAttribute in Ihrem Code anstelle des längeren XmlAttributeAttribute.

Im folgende Beispiel wird eine Klasse, die mehrere Felder, die enthält serialisiert die XmlAttributeAttribute angewendet wird.

using System;
using System.IO;
using System.Xml;
using System.Xml.Serialization;
using System.Xml.Schema;

public class Group
{
   [XmlAttribute (Namespace = "http://www.cpandl.com")]
   public string GroupName;

   [XmlAttribute(DataType = "base64Binary")]
   public Byte [] GroupNumber;

   [XmlAttribute(DataType = "date", AttributeName = "CreationDate")]
   public DateTime Today;
}



public class Run
{
   public static void Main()
   {
      Run test = new Run();
      test.SerializeObject("Attributes.xml");
   }


   public void SerializeObject(string filename)
   {
      // Create an instance of the XmlSerializer class.
      XmlSerializer mySerializer =  
      new XmlSerializer(typeof(Group));

      // Writing the file requires a TextWriter.
      TextWriter writer = new StreamWriter(filename);

      // Create an instance of the class that will be serialized.
      Group myGroup = new Group();

      // Set the object properties.
      myGroup.GroupName = ".NET";

      Byte [] hexByte = new Byte[2]{Convert.ToByte(100),
      Convert.ToByte(50)};
      myGroup.GroupNumber = hexByte;

      DateTime myDate = new DateTime(2001,1,10);
      myGroup.Today = myDate;

      // Serialize the class, and close the TextWriter.
      mySerializer.Serialize(writer, myGroup);
       writer.Close();
   }
}

Universelle Windows-Plattform
Verfügbar seit 8
.NET Framework
Verfügbar seit 1.1
Portierbare Klassenbibliothek
Unterstützt in: portierbare .NET-Plattformen
Silverlight
Verfügbar seit 2.0
Windows Phone Silverlight
Verfügbar seit 7.0
Windows Phone
Verfügbar seit 8.1

Alle öffentlichen statischen Member ( Shared in Visual Basic) dieses Typs sind threadsicher. Die Threadsicherheit für Instanzmember ist nicht garantiert.

Zurück zum Anfang
Anzeigen: