Compartir a través de


XmlRootAttribute Clase

Definición

Controla la serialización XML del destino del atributo como un elemento raíz XML.

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
Herencia
XmlRootAttribute
Atributos

Ejemplos

En el ejemplo siguiente se aplica a XmlRootAttribute una clase . El atributo especifica el nombre del elemento, el espacio de nombres y si el elemento está calificado y si el atributo se genera si la xsi:nil clase está establecida nullen .

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

Comentarios

XmlRootAttribute pertenece a una familia de atributos que controla cómo serializa XmlSerializer o deserializa un objeto . Para obtener una lista completa de atributos similares, vea Atributos que controlan la serialización XML.

Puede aplicar a XmlRootAttribute una clase, estructura, enumeración o interfaz. También puede aplicar el atributo al valor devuelto de un método de servicio web XML.

Cada documento XML debe tener un único elemento raíz que contenga todos los demás elementos. XmlRootAttribute permite controlar cómo XmlSerializer genera el elemento raíz estableciendo determinadas propiedades. Por ejemplo, especifique el nombre del elemento XML generado estableciendo la ElementName propiedad .

Para obtener más información sobre el uso de atributos, vea Atributos.

Nota:

Puede usar la palabra XmlRoot en el código en lugar del más largo XmlRootAttribute.

Constructores

Nombre Description
XmlRootAttribute()

Inicializa una nueva instancia de la clase XmlRootAttribute.

XmlRootAttribute(String)

Inicializa una nueva instancia de la XmlRootAttribute clase y especifica el nombre del elemento raíz XML.

Propiedades

Nombre Description
DataType

Obtiene o establece el tipo de datos XSD del elemento raíz XML.

ElementName

Obtiene o establece el nombre del elemento XML generado y reconocido por los métodos y Deserialize(Stream) de Serialize(TextWriter, Object) la XmlSerializer clase, respectivamente.

IsNullable

Obtiene o establece un valor que indica si XmlSerializer debe serializar un miembro establecido null en en el xsi:nil atributo establecido trueen .

Namespace

Obtiene o establece el espacio de nombres para el elemento raíz XML.

TypeId

Cuando se implementa en una clase derivada, obtiene un identificador único para este Attribute.

(Heredado de Attribute)

Métodos

Nombre Description
Equals(Object)

Devuelve un valor que indica si esta instancia es igual a un objeto especificado.

(Heredado de Attribute)
GetHashCode()

Devuelve el código hash de esta instancia.

(Heredado de Attribute)
GetType()

Obtiene el Type de la instancia actual.

(Heredado de Object)
IsDefaultAttribute()

Cuando se reemplaza en una clase derivada, indica si el valor de esta instancia es el valor predeterminado de la clase derivada.

(Heredado de Attribute)
Match(Object)

Cuando se reemplaza en una clase derivada, devuelve un valor que indica si esta instancia es igual a un objeto especificado.

(Heredado de Attribute)
MemberwiseClone()

Crea una copia superficial del Objectactual.

(Heredado de Object)
ToString()

Devuelve una cadena que representa el objeto actual.

(Heredado de Object)

Implementaciones de interfaz explícitas

Nombre Description
_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

Asigna un conjunto de nombres a un conjunto correspondiente de identificadores de envío.

(Heredado de Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Recupera la información de tipo de un objeto, que se puede usar para obtener la información de tipo de una interfaz.

(Heredado de Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Recupera el número de interfaces de información de tipo que proporciona un objeto (0 ó 1).

(Heredado de Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Proporciona acceso a propiedades y métodos expuestos por un objeto .

(Heredado de Attribute)

Se aplica a

Consulte también