XmlAttributeAttribute Osztály
Definíció
Fontos
Egyes információk olyan, kiadás előtti termékekre vonatkoznak, amelyek a kiadásig még jelentősen módosulhatnak. A Microsoft nem vállal kifejezett vagy törvényi garanciát az itt megjelenő információért.
Megadja, hogy az XmlSerializer osztálytagot XML-attribútumként kell szerializálnia.
public ref class XmlAttributeAttribute : Attribute
[System.AttributeUsage(System.AttributeTargets.Field | System.AttributeTargets.Parameter | System.AttributeTargets.Property | System.AttributeTargets.ReturnValue)]
public class XmlAttributeAttribute : Attribute
[<System.AttributeUsage(System.AttributeTargets.Field | System.AttributeTargets.Parameter | System.AttributeTargets.Property | System.AttributeTargets.ReturnValue)>]
type XmlAttributeAttribute = class
inherit Attribute
Public Class XmlAttributeAttribute
Inherits Attribute
- Öröklődés
- Attribútumok
Példák
Az alábbi példa szerializál egy osztályt, amely több olyan mezőt tartalmaz, amelyekre az XmlAttributeAttribute alkalmazás vonatkozik.
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();
}
}
Option Explicit
Option Strict
Imports System.IO
Imports System.Xml
Imports System.Xml.Serialization
Imports System.Xml.Schema
Public Class Group
<XmlAttribute(Namespace := "http://www.cpandl.com")> _
Public GroupName As String
<XmlAttribute(DataType := "base64Binary")> _
Public GroupNumber() As Byte
<XmlAttribute(DataType := "date", AttributeName := "CreationDate")> _
Public Today As DateTime
End Class
Public Class Run
Public Shared Sub Main()
Dim test As New Run()
test.SerializeObject("Attributes.xml")
End Sub
Public Sub SerializeObject(ByVal filename As String)
' Create an instance of the XmlSerializer class.
Dim mySerializer As New XmlSerializer(GetType(Group))
' Writing the file requires a TextWriter.
Dim writer As New StreamWriter(filename)
' Create an instance of the class that will be serialized.
Dim myGroup As New Group()
' Set the object properties.
myGroup.GroupName = ".NET"
Dim hexByte() As Byte = {Convert.ToByte(100), Convert.ToByte(50)}
myGroup.GroupNumber = hexByte
Dim myDate As New DateTime(2001, 1, 10)
myGroup.Today = myDate
' Serialize the class, and close the TextWriter.
mySerializer.Serialize(writer, myGroup)
writer.Close()
End Sub
End Class
Megjegyzések
Az XmlAttributeAttribute objektum egy attribútumcsaládhoz tartozik, amely azt szabályozza, hogy a XmlSerializer szerializálja vagy deszerializálja az objektumot. A hasonló attribútumok teljes listáját az XML-szerializálást vezérlő attribútumok című témakörben találja.
Nyilvános mezőre vagy tulajdonságra alkalmazva a XmlAttributeAttribute rendszer tájékoztatja a XmlSerializer tag XML-attribútumként való szerializálásáról. Alapértelmezés szerint a szerializálja a XmlSerializer nyilvános mezőket és tulajdonságokat XML-elemként.
Az egyetlen olyan nyilvános mezőkhöz vagy nyilvános tulajdonságokhoz rendelhető hozzá XmlAttributeAttribute , amelyek olyan értéket (vagy értéktömböt) adnak vissza, amely megfeleltethető az XML-sémadefiníciós nyelv (XSD) egyik egyszerű típusára (beleértve az XSD-típusból anySimpleType származtatott összes beépített adattípust). A lehetséges típusok közé tartoznak az XSD egyszerű típusaira leképezhető típusok, például Guida , Charés az enumerálások. Az XSD-típusok listájának DataType tulajdonságát és azok leképezésének módját.NET adattípusokat tekintheti meg.
Két speciális attribútum állítható be a XmlAttributeAttribute következővel: a xml:lang (nyelv megadása) és xml:space (a szabad terület kezelésére vonatkozó) attribútumokkal. Ezek az attribútumok olyan információk továbbítására szolgálnak, amelyek csak az XML-t feldolgozó alkalmazás számára relevánsak. Ezek beállítására példák az alábbi kódban láthatók.
[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
<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
Az attribútumok használatáról további információt az Attribútumok című témakörben talál.
Note
A hosszabb helyett használhatja a szót XmlAttribute a XmlAttributeAttributekódban.
Konstruktorok
| Name | Description |
|---|---|
| XmlAttributeAttribute() |
Inicializálja a XmlAttributeAttribute osztály új példányát. |
| XmlAttributeAttribute(String, Type) |
Inicializálja a XmlAttributeAttribute osztály új példányát. |
| XmlAttributeAttribute(String) |
Inicializálja az XmlAttributeAttribute osztály új példányát, és megadja a létrehozott XML-attribútum nevét. |
| XmlAttributeAttribute(Type) |
Inicializálja a XmlAttributeAttribute osztály új példányát. |
Tulajdonságok
| Name | Description |
|---|---|
| AttributeName |
Lekéri vagy beállítja az XML-attribútum nevét. |
| DataType |
Lekéri vagy beállítja a rendszer által létrehozott XML-attribútum XSD-adattípusát XmlSerializer. |
| Form |
Lekéri vagy beállít egy értéket, amely jelzi, hogy az XML-attribútum által létrehozott XmlSerializer név minősített-e. |
| Namespace |
Lekéri vagy beállítja az XML-attribútum XML-névterét. |
| Type |
Lekéri vagy beállítja az XML-attribútum összetett típusát. |
| TypeId |
Ha származtatott osztályban implementálják, ehhez egy egyedi azonosítót Attributekap. (Öröklődés forrása Attribute) |
Metódusok
| Name | Description |
|---|---|
| Equals(Object) |
Olyan értéket ad vissza, amely jelzi, hogy ez a példány egyenlő-e egy adott objektummal. (Öröklődés forrása Attribute) |
| GetHashCode() |
A példány kivonatkódját adja vissza. (Öröklődés forrása Attribute) |
| GetType() |
Lekéri az Type aktuális példányt. (Öröklődés forrása Object) |
| IsDefaultAttribute() |
Ha egy származtatott osztályban felül van bírálva, azt jelzi, hogy a példány értéke-e a származtatott osztály alapértelmezett értéke. (Öröklődés forrása Attribute) |
| Match(Object) |
Származtatott osztály felülírásakor egy olyan értéket ad vissza, amely jelzi, hogy ez a példány egy adott objektummal egyenlő-e. (Öröklődés forrása Attribute) |
| MemberwiseClone() |
Az aktuális Objectpéldány sekély másolatát hozza létre. (Öröklődés forrása Object) |
| ToString() |
Az aktuális objektumot jelképező sztringet ad vissza. (Öröklődés forrása Object) |
Explicit interfész-implementációk
| Name | Description |
|---|---|
| _Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
Névkészletet képez le a küldési azonosítók megfelelő készletére. (Öröklődés forrása Attribute) |
| _Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) |
Lekéri egy objektum típusadatait, amelyek a felület típusadatainak lekérésére használhatók. (Öröklődés forrása Attribute) |
| _Attribute.GetTypeInfoCount(UInt32) |
Lekéri az objektumok által biztosított típusinformációs felületek számát (0 vagy 1). (Öröklődés forrása Attribute) |
| _Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
Hozzáférést biztosít az objektumok által közzétett tulajdonságokhoz és metódusokhoz. (Öröklődés forrása Attribute) |