Freigeben über


XmlRootAttribute Klasse

Definition

Steuert die XML-Serialisierung des Zielattributs als XML-Wurzelelement.

public ref class XmlRootAttribute : Attribute
[System.AttributeUsage(System.AttributeTargets.Class | System.AttributeTargets.Enum | System.AttributeTargets.Interface | System.AttributeTargets.ReturnValue | System.AttributeTargets.Struct)]
public class XmlRootAttribute : Attribute
[<System.AttributeUsage(System.AttributeTargets.Class | System.AttributeTargets.Enum | System.AttributeTargets.Interface | System.AttributeTargets.ReturnValue | System.AttributeTargets.Struct)>]
type XmlRootAttribute = class
    inherit Attribute
Public Class XmlRootAttribute
Inherits Attribute
Vererbung
XmlRootAttribute
Attribute

Beispiele

Im folgenden Beispiel wird die XmlRootAttribute Klasse angewendet. Das Attribut gibt den Elementnamen, namespace und an, ob das Element qualifiziert ist, und ob das xsi:nil Attribut generiert wird, wenn die Klasse auf ".null

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

[XmlRoot(Namespace = "www.contoso.com",
     ElementName = "MyGroupName",
     DataType = "string",
     IsNullable=true)]
public class Group
{
    private string groupNameValue;
    // Insert code for the Group class.
    public Group()
    {
    }

    public Group(string groupNameVal)
    {
        groupNameValue = groupNameVal;
    }

    public string GroupName
    {
        get{return groupNameValue;}
        set{groupNameValue = value;}
    }
}
public class Test
{
    static void Main()
    {
        Test t = new Test();
        t.SerializeGroup();
    }

    private void SerializeGroup()
    {
        // Create an instance of the Group class, and an
        // instance of the XmlSerializer to serialize it.
        Group myGroup = new Group("Redmond");
        XmlSerializer ser = new XmlSerializer(typeof(Group));
        // A FileStream is used to write the file.
        FileStream fs = new FileStream("group.xml",FileMode.Create);
        ser.Serialize(fs,myGroup);
        fs.Close();
        Console.WriteLine(myGroup.GroupName);
        Console.WriteLine("Done");
        Console.ReadLine();
    }
}
Imports System.IO
Imports System.Xml
Imports System.Xml.Schema
Imports System.Xml.Serialization

<XmlRoot(Namespace:="www.contoso.com", _
    ElementName:="MyGroupName", _
    DataType:="string", _
    IsNullable:=True)> _
Public Class Group

    Private groupNameValue As String
    ' Insert code for the Group class.
    Public Sub New()

    End Sub

    Public Sub New(ByVal groupNameVal As String)

        groupNameValue = groupNameVal
    End Sub

    Property GroupName() As String
        Get
            Return groupNameValue
        End Get

        Set(ByVal Value As String)
            groupNameValue = Value
        End Set
    End Property
End Class

Public Class Test

    Shared Sub Main()

        Dim t As Test = New Test()
        t.SerializeGroup()
    End Sub

    Private Sub SerializeGroup()

        ' Create an instance of the Group class, and an
        ' instance of the XmlSerializer to serialize it.
        Dim myGroup As Group = New Group("Redmond")
        Dim ser As XmlSerializer = New XmlSerializer(GetType(Group))

        ' A FileStream is used to write the file.
        Dim fs As FileStream = New FileStream("group.xml", FileMode.Create)
        ser.Serialize(fs, myGroup)
        fs.Close()
        Console.WriteLine(myGroup.GroupName)
        Console.WriteLine("Done... Press any key to exit.")
        Console.ReadLine()
    End Sub

End Class

Hinweise

Dies XmlRootAttribute gehört zu einer Familie von Attributen, die steuert, wie das XmlSerializer Serialisieren oder Deserialisieren eines Objekts. Eine vollständige Liste ähnlicher Attribute finden Sie unter Attributes That Control XML Serialization.

Sie können die XmlRootAttribute Klasse, Struktur, Aufzählung oder Schnittstelle anwenden. Sie können das Attribut auch auf den Rückgabewert einer XML-Webdienstmethode anwenden.

Jedes XML-Dokument muss über ein einzelnes Stammelement verfügen, das alle anderen Elemente enthält. Auf XmlRootAttribute diese Weise können Sie steuern, wie das XmlSerializer Stammelement generiert wird, indem Sie bestimmte Eigenschaften festlegen. Geben Sie beispielsweise den Namen des generierten XML-Elements an, indem Sie die ElementName Eigenschaft festlegen.

Weitere Informationen zur Verwendung von Attributen finden Sie unter "Attribute".

Hinweis

Sie können das Wort XmlRoot in Ihrem Code anstelle der längeren XmlRootAttributeVerwenden.

Konstruktoren

Name Beschreibung
XmlRootAttribute()

Initialisiert eine neue Instanz der XmlRootAttribute-Klasse.

XmlRootAttribute(String)

Initialisiert eine neue Instanz der XmlRootAttribute Klasse und gibt den Namen des XML-Stammelements an.

Eigenschaften

Name Beschreibung
DataType

Dient zum Abrufen oder Festlegen des XSD-Datentyps des XML-Stammelements.

ElementName

Dient zum Abrufen oder Festlegen des Namens des XML-Elements, das von den XmlSerializer Klassen Serialize(TextWriter, Object) und Methoden generiert bzw Deserialize(Stream) . erkannt wird.

IsNullable

Dient zum Abrufen oder Festlegen eines Werts, der angibt, ob das XmlSerializer Element serialisieren muss, auf das das xsi:nil Attribut festgelegt nulltrueist.

Namespace

Ruft den Namespace für das XML-Stammelement ab oder legt den Namespace fest.

TypeId

Wenn sie in einer abgeleiteten Klasse implementiert wird, wird ein eindeutiger Bezeichner für diese Attribute.

(Geerbt von Attribute)

Methoden

Name Beschreibung
Equals(Object)

Gibt einen Wert zurück, der angibt, ob diese Instanz einem angegebenen Objekt entspricht.

(Geerbt von Attribute)
GetHashCode()

Gibt den Hashcode für diese Instanz zurück.

(Geerbt von Attribute)
GetType()

Ruft die Type der aktuellen Instanz ab.

(Geerbt von Object)
IsDefaultAttribute()

Wenn sie in einer abgeleiteten Klasse überschrieben wird, gibt an, ob der Wert dieser Instanz der Standardwert für die abgeleitete Klasse ist.

(Geerbt von Attribute)
Match(Object)

Wenn sie in einer abgeleiteten Klasse überschrieben wird, wird ein Wert zurückgegeben, der angibt, ob diese Instanz einem angegebenen Objekt entspricht.

(Geerbt von Attribute)
MemberwiseClone()

Erstellt eine flache Kopie der aktuellen Object.

(Geerbt von Object)
ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.

(Geerbt von Object)

Explizite Schnittstellenimplementierungen

Name Beschreibung
_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

Ordnet eine Reihe von Namen einer entsprechenden Reihe von Dispatchbezeichnern zu.

(Geerbt von Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Ruft die Typinformationen für ein Objekt ab, mit denen die Typinformationen für eine Schnittstelle abgerufen werden können.

(Geerbt von Attribute)
_Attribute.GetTypeInfoCount(UInt32)

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

(Geerbt von Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Bietet Zugriff auf Eigenschaften und Methoden, die von einem Objekt verfügbar gemacht werden.

(Geerbt von Attribute)

Gilt für:

Weitere Informationen