XmlAttributes.XmlType Proprietà
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.
Ottiene o imposta un oggetto che specifica la modalità di serializzazione di XmlSerializer una classe a cui è stato applicato l'oggetto XmlTypeAttribute .
public:
property System::Xml::Serialization::XmlTypeAttribute ^ XmlType { System::Xml::Serialization::XmlTypeAttribute ^ get(); void set(System::Xml::Serialization::XmlTypeAttribute ^ value); };
public System.Xml.Serialization.XmlTypeAttribute XmlType { get; set; }
public System.Xml.Serialization.XmlTypeAttribute? XmlType { get; set; }
member this.XmlType : System.Xml.Serialization.XmlTypeAttribute with get, set
Public Property XmlType As XmlTypeAttribute
Valore della proprietà
Oggetto XmlTypeAttribute che esegue l'override di un XmlTypeAttribute oggetto applicato a una dichiarazione di classe.
Esempio
Nell'esempio seguente viene creato un XmlTypeAttribute oggetto e lo si assegna alla XmlType proprietà di un XmlAttributes oggetto .
using System;
using System.IO;
using System.Xml.Serialization;
public class Transportation
{
public Car[] Cars;
}
public class Car
{
public int ID;
}
public class Test
{
public static void Main()
{
Test t = new Test();
t.SerializeObject("XmlType.xml");
}
// Return an XmlSerializer used for overriding.
public XmlSerializer CreateOverrider()
{
// Create the XmlAttributes and XmlAttributeOverrides objects.
XmlAttributes attrs = new XmlAttributes();
XmlAttributeOverrides xOver = new XmlAttributeOverrides();
/* Create an XmlTypeAttribute and change the name of the
XML type. */
XmlTypeAttribute xType = new XmlTypeAttribute();
xType.TypeName = "Autos";
// Set the XmlTypeAttribute to the XmlType property.
attrs.XmlType = xType;
/* Add the XmlAttributes to the XmlAttributeOverrides,
specifying the member to override. */
xOver.Add(typeof(Car), attrs);
// Create the XmlSerializer, and return it.
XmlSerializer xSer = new XmlSerializer
(typeof(Transportation), xOver);
return xSer;
}
public void SerializeObject(string filename)
{
// Create an XmlSerializer instance.
XmlSerializer xSer = CreateOverrider();
// Create object and serialize it.
Transportation myTransportation =
new Transportation();
Car c1 = new Car();
c1.ID = 12;
Car c2 = new Car();
c2.ID = 44;
myTransportation.Cars = new Car[2]{c1,c2};
// To write the file, a TextWriter is required.
TextWriter writer = new StreamWriter(filename);
xSer.Serialize(writer, myTransportation);
}
}
Imports System.IO
Imports System.Xml.Serialization
Public Class Transportation
Public Cars() As Car
End Class
Public Class Car
Public ID As Integer
End Class
Public Class Test
Public Shared Sub Main()
Dim t As New Test()
t.SerializeObject("XmlType.xml")
End Sub
' Return an XmlSerializer used for overriding.
Public Function CreateOverrider() As XmlSerializer
' Create the XmlAttributes and XmlAttributeOverrides objects.
Dim attrs As New XmlAttributes()
Dim xOver As New XmlAttributeOverrides()
' Create an XmlTypeAttribute and change the name of the
' XML type.
Dim xType As New XmlTypeAttribute()
xType.TypeName = "Autos"
' Set the XmlTypeAttribute to the XmlType property.
attrs.XmlType = xType
' Add the XmlAttributes to the XmlAttributeOverrides,
' specifying the member to override.
xOver.Add(GetType(Car), attrs)
' Create the XmlSerializer, and return it.
Dim xSer As New XmlSerializer(GetType(Transportation), xOver)
Return xSer
End Function
Public Sub SerializeObject(ByVal filename As String)
' Create an XmlSerializer instance.
Dim xSer As XmlSerializer = CreateOverrider()
' Create an object and serialize it.
Dim myTransportation As New Transportation()
Dim c1 As New Car()
c1.ID = 12
Dim c2 As New Car()
c2.ID = 44
myTransportation.Cars = New Car(1) {c1, c2}
' To write the file, a TextWriter is required.
Dim writer As New StreamWriter(filename)
xSer.Serialize(writer, myTransportation)
End Sub
End Class
Commenti
Può XmlTypeAttribute essere utilizzato per controllare il modo in XmlSerializercui un tipo viene serializzato da . Ad esempio, per impostazione predefinita, quando un tipo viene serializzato, XmlSerializer usa il nome della classe come nome dell'elemento XML. Creando un oggetto XmlTypeAttribute, impostando la XmlType proprietà su di essa e creando un XmlAttributeOverrides oggetto , è possibile modificare il nome dell'elemento XML.