XmlRootAttribute Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Controlla la serializzazione XML della destinazione dell'attributo come un elemento radice 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
- Ereditarietà
- Attributi
Esempio
Nell'esempio seguente viene applicato a XmlRootAttribute una classe . L'attributo specifica il nome dell'elemento, lo spazio dei nomi e se l'elemento è qualificato e se l'attributo xsi:nil
viene generato se la classe è impostata su null
.
#using <System.Xml.dll>
#using <System.dll>
using namespace System;
using namespace System::IO;
using namespace System::Xml;
using namespace System::Xml::Schema;
using namespace System::Xml::Serialization;
[XmlRoot(Namespace="www.contoso.com",
ElementName="MyGroupName",
DataType="string",
IsNullable=true)]
public ref class Group
{
private:
String^ groupNameValue;
public:
// Insert code for the Group class.
Group(){}
Group( String^ groupNameVal )
{
groupNameValue = groupNameVal;
}
property String^ GroupName
{
String^ get()
{
return groupNameValue;
}
void set( String^ value )
{
groupNameValue = value;
}
}
};
void SerializeGroup()
{
// Create an instance of the Group class, and an
// instance of the XmlSerializer to serialize it.
Group^ myGroup = gcnew Group( "Redmond" );
XmlSerializer^ ser = gcnew XmlSerializer( Group::typeid );
// A FileStream is used to write the file.
FileStream^ fs = gcnew FileStream( "group.xml",FileMode::Create );
ser->Serialize( fs, myGroup );
fs->Close();
Console::WriteLine( myGroup->GroupName );
Console::WriteLine( "Done" );
Console::ReadLine();
}
int main()
{
SerializeGroup();
}
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
Commenti
Appartiene XmlRootAttribute a una famiglia di attributi che controlla il modo in cui serializza XmlSerializer o deserializza un oggetto. Per un elenco completo di attributi simili, vedere Attributi che controllano la serializzazione XML.
È possibile applicare a XmlRootAttribute una classe, struttura, enumerazione o interfaccia. È anche possibile applicare l'attributo al valore restituito di un metodo di servizio Web XML.
Ogni documento XML deve avere un singolo elemento radice che contiene tutti gli altri elementi. consente XmlRootAttribute di controllare la modalità di generazione dell'elemento XmlSerializer radice impostando determinate proprietà. Ad esempio, specificare il nome dell'elemento XML generato impostando la ElementName proprietà .
Per altre informazioni sull'uso degli attributi, vedere Attributi.
Nota
È possibile usare la parola XmlRoot
nel codice anziché quella più lunga XmlRootAttribute.
Costruttori
XmlRootAttribute() |
Inizializza una nuova istanza della classe XmlRootAttribute. |
XmlRootAttribute(String) |
Inizializza una nuova istanza della classe XmlRootAttribute e specifica il nome dell'elemento XML di primo livello. |
Proprietà
DataType |
Ottiene o imposta il tipo di dati XSD dell'elemento XML di primo livello. |
ElementName |
Ottiene o imposta il nome dell'elemento XML generato e riconosciuto rispettivamente dai metodi XmlSerializer e Serialize(TextWriter, Object) della classe Deserialize(Stream). |
IsNullable |
Ottiene o imposta un valore che indica se XmlSerializer deve serializzare un membro impostato su |
Namespace |
Ottiene o imposta lo spazio dei nomi dell'elemento XML di primo livello. |
TypeId |
Quando è implementata in una classe derivata, ottiene un identificatore univoco della classe Attribute. (Ereditato da Attribute) |
Metodi
Equals(Object) |
Restituisce un valore che indica se questa istanza è uguale a un oggetto specificato. (Ereditato da Attribute) |
GetHashCode() |
Restituisce il codice hash per l'istanza. (Ereditato da Attribute) |
GetType() |
Ottiene l'oggetto Type dell'istanza corrente. (Ereditato da Object) |
IsDefaultAttribute() |
In caso di override in una classe derivata, indica se il valore di questa istanza è il valore predefinito per la classe derivata. (Ereditato da Attribute) |
Match(Object) |
Quando è sottoposto a override in una classe derivata, restituisce un valore che indica se questa istanza equivale a un oggetto specificato. (Ereditato da Attribute) |
MemberwiseClone() |
Crea una copia superficiale dell'oggetto Object corrente. (Ereditato da Object) |
ToString() |
Restituisce una stringa che rappresenta l'oggetto corrente. (Ereditato da Object) |
Implementazioni dell'interfaccia esplicita
_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
Esegue il mapping di un set di nomi a un set corrispondente di ID dispatch. (Ereditato da Attribute) |
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) |
Recupera le informazioni sul tipo relative a un oggetto, che possono essere usate per ottenere informazioni sul tipo relative a un'interfaccia. (Ereditato da Attribute) |
_Attribute.GetTypeInfoCount(UInt32) |
Recupera il numero delle interfacce di informazioni sul tipo fornite da un oggetto (0 o 1). (Ereditato da Attribute) |
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
Fornisce l'accesso a proprietà e metodi esposti da un oggetto. (Ereditato da Attribute) |