XmlAttributeAttribute Klas

Definitie

Hiermee geeft u op dat het XmlSerializer klasselid moet worden geserialiseerd als een XML-kenmerk.

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
Overname
XmlAttributeAttribute
Kenmerken

Voorbeelden

In het volgende voorbeeld wordt een klasse geserialiseerd die verschillende velden bevat waarop de XmlAttributeAttribute klasse wordt toegepast.

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

Opmerkingen

Het XmlAttributeAttribute behoort tot een familie van kenmerken die bepalen hoe de XmlSerializer serialiseren, of deserialisaties, een object. Zie Kenmerken die XML-serialisatie regelen voor een volledige lijst met vergelijkbare kenmerken.

Wanneer deze wordt toegepast op een openbaar veld of een openbare eigenschap, XmlAttributeAttribute wordt het XmlSerializer lid geïnformeerd om het lid te serialiseren als een XML-kenmerk. XmlSerializer Standaard worden openbare velden en eigenschappen geserialiseerd als XML-elementen.

U kunt de XmlAttributeAttribute enige toewijzen aan openbare velden of openbare eigenschappen die een waarde (of matrix met waarden) retourneren die kunnen worden toegewezen aan een van de eenvoudige XSD-typen (XML Schema Definition Language), inclusief alle ingebouwde gegevenstypen die zijn afgeleid van het XSD-type anySimpleType . De mogelijke typen omvatten alle typen die kunnen worden toegewezen aan de eenvoudige XSD-typen, waaronder Guid, Charen opsommingen. Zie de eigenschap DataType voor een lijst met XSD-typen en hoe deze worden toegewezen.NET gegevenstypen.

Er zijn twee speciale kenmerken die kunnen worden ingesteld met de XmlAttributeAttribute kenmerken : de xml:lang (specificeert taal) en xml:space (geeft aan hoe witruimte moet worden verwerkt) kenmerken. Deze kenmerken zijn bedoeld om informatie over te brengen die alleen relevant is voor een toepassing die de XML verwerkt. Voorbeelden van het instellen hiervan worden weergegeven in de volgende code.

[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

Zie Kenmerken voor meer informatie over het gebruik van kenmerken.

Note

U kunt het woord XmlAttribute in uw code gebruiken in plaats van langer XmlAttributeAttribute.

Constructors

Name Description
XmlAttributeAttribute()

Initialiseert een nieuw exemplaar van de XmlAttributeAttribute klasse.

XmlAttributeAttribute(String, Type)

Initialiseert een nieuw exemplaar van de XmlAttributeAttribute klasse.

XmlAttributeAttribute(String)

Initialiseert een nieuw exemplaar van de XmlAttributeAttribute klasse en geeft de naam van het gegenereerde XML-kenmerk op.

XmlAttributeAttribute(Type)

Initialiseert een nieuw exemplaar van de XmlAttributeAttribute klasse.

Eigenschappen

Name Description
AttributeName

Hiermee haalt u de naam van het XML-kenmerk op of stelt u deze in.

DataType

Hiermee wordt het XSD-gegevenstype opgehaald of ingesteld van het XML-kenmerk dat wordt gegenereerd door de XmlSerializer.

Form

Hiermee wordt een waarde opgehaald of ingesteld die aangeeft of de naam van het XML-kenmerk die door de XmlSerializer naam is gegenereerd, is gekwalificeerd.

Namespace

Hiermee haalt u de XML-naamruimte van het XML-kenmerk op of stelt u deze in.

Type

Hiermee haalt u het complexe type van het XML-kenmerk op of stelt u dit in.

TypeId

Wanneer deze wordt geïmplementeerd in een afgeleide klasse, krijgt u Attributehiervoor een unieke id.

(Overgenomen van Attribute)

Methoden

Name Description
Equals(Object)

Retourneert een waarde die aangeeft of dit exemplaar gelijk is aan een opgegeven object.

(Overgenomen van Attribute)
GetHashCode()

Retourneert de hash-code voor dit exemplaar.

(Overgenomen van Attribute)
GetType()

Hiermee haalt u de Type huidige instantie op.

(Overgenomen van Object)
IsDefaultAttribute()

Wanneer deze wordt overschreven in een afgeleide klasse, geeft u aan of de waarde van dit exemplaar de standaardwaarde is voor de afgeleide klasse.

(Overgenomen van Attribute)
Match(Object)

Wanneer deze wordt overschreven in een afgeleide klasse, wordt een waarde geretourneerd die aangeeft of dit exemplaar gelijk is aan een opgegeven object.

(Overgenomen van Attribute)
MemberwiseClone()

Hiermee maakt u een ondiepe kopie van de huidige Object.

(Overgenomen van Object)
ToString()

Retourneert een tekenreeks die het huidige object vertegenwoordigt.

(Overgenomen van Object)

Expliciete interface-implementaties

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

Hiermee wordt een set namen toegewezen aan een bijbehorende set verzend-id's.

(Overgenomen van Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Hiermee haalt u de typegegevens voor een object op, die kan worden gebruikt om de typegegevens voor een interface op te halen.

(Overgenomen van Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Hiermee wordt het aantal type-informatieinterfaces opgehaald dat een object biedt (0 of 1).

(Overgenomen van Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Biedt toegang tot eigenschappen en methoden die door een object worden weergegeven.

(Overgenomen van Attribute)

Van toepassing op