XmlAttributeAttribute Classe
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Spécifie que le XmlSerializer doit sérialiser le membre de classe en tant qu’attribut XML.
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
- Héritage
- Attributs
Exemples
L’exemple suivant sérialise une classe qui contient plusieurs champs auxquels l’application XmlAttributeAttribute est appliquée.
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
Remarques
Il XmlAttributeAttribute appartient à une famille d’attributs qui contrôle la façon dont les XmlSerializer sérialises, ou désérialise, un objet. Pour obtenir la liste complète des attributs similaires, consultez Attributs qui contrôlent la sérialisation XML.
Lorsqu’il est appliqué à un champ public ou à une propriété, il XmlAttributeAttribute informe le XmlSerializer membre de sérialiser en tant qu’attribut XML. Par défaut, la XmlSerializer sérialise les champs et propriétés publics en tant qu’éléments XML.
Vous pouvez affecter les XmlAttributeAttribute seuls champs publics ou propriétés publiques qui retournent une valeur (ou un tableau de valeurs) qui peuvent être mappés à l’un des types simples XSD (XML Schema Definition Language) (y compris tous les types de données intégrés dérivés du type XSD anySimpleType ). Les types possibles incluent tous ceux qui peuvent être mappés aux types simples XSD, y compris Guid, Charet les énumérations. Consultez la propriété pour obtenir la DataType liste des types XSD et comment ils sont mappés to.NET types de données.
Il existe deux attributs spéciaux qui peuvent être définis avec les attributs (spécifie la XmlAttributeAttribute langue) et xml:space (spécifie comment gérer les espaces blancs).xml:lang Ces attributs sont destinés à transmettre des informations pertinentes uniquement à une application qui traite le code XML. Les exemples de définition de ces paramètres sont présentés dans le code suivant.
[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
Pour plus d’informations sur l’utilisation d’attributs, consultez Attributs.
Note
Vous pouvez utiliser le mot XmlAttribute dans votre code au lieu du plus long XmlAttributeAttribute.
Constructeurs
| Nom | Description |
|---|---|
| XmlAttributeAttribute() |
Initialise une nouvelle instance de la classe XmlAttributeAttribute. |
| XmlAttributeAttribute(String, Type) |
Initialise une nouvelle instance de la classe XmlAttributeAttribute. |
| XmlAttributeAttribute(String) |
Initialise une nouvelle instance de la XmlAttributeAttribute classe et spécifie le nom de l’attribut XML généré. |
| XmlAttributeAttribute(Type) |
Initialise une nouvelle instance de la classe XmlAttributeAttribute. |
Propriétés
| Nom | Description |
|---|---|
| AttributeName |
Obtient ou définit le nom de l’attribut XML. |
| DataType |
Obtient ou définit le type de données XSD de l’attribut XML généré par le XmlSerializer. |
| Form |
Obtient ou définit une valeur qui indique si le nom d’attribut XML généré par l’attribut XmlSerializer est qualifié. |
| Namespace |
Obtient ou définit l’espace de noms XML de l’attribut XML. |
| Type |
Obtient ou définit le type complexe de l’attribut XML. |
| TypeId |
En cas d’implémentation dans une classe dérivée, obtient un identificateur unique pour cette Attribute. (Hérité de Attribute) |
Méthodes
| Nom | Description |
|---|---|
| Equals(Object) |
Retourne une valeur qui indique si cette instance est égale à un objet spécifié. (Hérité de Attribute) |
| GetHashCode() |
Retourne le code de hachage pour cette instance. (Hérité de Attribute) |
| GetType() |
Obtient la Type de l’instance actuelle. (Hérité de Object) |
| IsDefaultAttribute() |
En cas de substitution dans une classe dérivée, indique si la valeur de cette instance est la valeur par défaut de la classe dérivée. (Hérité de Attribute) |
| Match(Object) |
En cas de substitution dans une classe dérivée, retourne une valeur qui indique si cette instance est égale à un objet spécifié. (Hérité de Attribute) |
| MemberwiseClone() |
Crée une copie superficielle du Objectactuel. (Hérité de Object) |
| ToString() |
Retourne une chaîne qui représente l’objet actuel. (Hérité de Object) |
Implémentations d’interfaces explicites
| Nom | Description |
|---|---|
| _Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
Mappe un jeu de noms avec un jeu correspondant d'identificateurs de dispatch. (Hérité de Attribute) |
| _Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) |
Récupère les informations de type d’un objet, qui peuvent être utilisées pour obtenir les informations de type d’une interface. (Hérité de Attribute) |
| _Attribute.GetTypeInfoCount(UInt32) |
Récupère le nombre d'interfaces d'informations de type fourni par un objet (0 ou 1). (Hérité de Attribute) |
| _Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
Fournit l’accès aux propriétés et méthodes exposées par un objet. (Hérité de Attribute) |