XmlSerializerNamespaces 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.
Contient les espaces de noms ET préfixes XML utilisés XmlSerializer pour générer des noms qualifiés dans une instance de document XML.
public ref class XmlSerializerNamespaces
public class XmlSerializerNamespaces
type XmlSerializerNamespaces = class
Public Class XmlSerializerNamespaces
- Héritage
-
XmlSerializerNamespaces
Exemples
L’exemple suivant crée un XmlSerializerNamespaces objet et y ajoute deux paires de préfixes et d’espaces de noms. L’exemple transmet ensuite la XmlSerializerNamespacesSerialize méthode, qui sérialise un Books objet dans un document XML. À l’aide de l’objet XmlSerializerNamespaces , la Serialize méthode qualifie chaque élément et attribut XML avec l’un des deux espaces de noms.
using System;
using System.IO;
using System.Xml;
using System.Xml.Serialization;
public class Run
{
public static void Main()
{
Run test = new Run();
test.SerializeObject("XmlNamespaces.xml");
}
public void SerializeObject(string filename)
{
XmlSerializer s = new XmlSerializer(typeof(Books));
// Writing a file requires a TextWriter.
TextWriter t = new StreamWriter(filename);
/* Create an XmlSerializerNamespaces object and add two
prefix-namespace pairs. */
XmlSerializerNamespaces ns = new XmlSerializerNamespaces();
ns.Add("books", "http://www.cpandl.com");
ns.Add("money", "http://www.cohowinery.com");
// Create a Book instance.
Book b = new Book();
b.TITLE = "A Book Title";
Price p = new Price();
p.price = (decimal) 9.95;
p.currency = "US Dollar";
b.PRICE = p;
Books bks = new Books();
bks.Book = b;
s.Serialize(t,bks,ns);
t.Close();
}
}
public class Books
{
[XmlElement(Namespace = "http://www.cohowinery.com")]
public Book Book;
}
[XmlType(Namespace ="http://www.cpandl.com")]
public class Book
{
[XmlElement(Namespace = "http://www.cpandl.com")]
public string TITLE;
[XmlElement(Namespace ="http://www.cohowinery.com")]
public Price PRICE;
}
public class Price
{
[XmlAttribute(Namespace = "http://www.cpandl.com")]
public string currency;
[XmlElement(Namespace = "http://www.cohowinery.com")]
public decimal price;
}
Imports System.IO
Imports System.Xml
Imports System.Xml.Serialization
Public Class Run
Public Shared Sub Main()
Dim test As New Run()
test.SerializeObject("XmlNamespaces.xml")
End Sub
Public Sub SerializeObject(ByVal filename As String)
Dim s As New XmlSerializer(GetType(Books))
' Writing a file requires a TextWriter.
Dim t As New StreamWriter(filename)
' Create an XmlSerializerNamespaces object and add two
' prefix-namespace pairs.
Dim ns As New XmlSerializerNamespaces()
ns.Add("books", "http://www.cpandl.com")
ns.Add("money", "http://www.cohowinery.com")
' Create a Book instance.
Dim b As New Book()
b.TITLE = "A Book Title"
Dim p As New Price()
p.price = CDec(9.95)
p.currency = "US Dollar"
b.PRICE = p
Dim bks As New Books()
bks.Book = b
s.Serialize(t, bks, ns)
t.Close()
End Sub
End Class
Public Class Books
<XmlElement(Namespace := "http://www.cohowinery.com")> _
Public Book As Book
End Class
<XmlType(Namespace := "http://www.cpandl.com")> _
Public Class Book
<XmlElement(Namespace := "http://www.cpandl.com")> _
Public TITLE As String
<XmlElement(Namespace := "http://www.cohowinery.com")> _
Public PRICE As Price
End Class
Public Class Price
<XmlAttribute(Namespace := "http://www.cpandl.com")> _
Public currency As String
<XmlElement(Namespace := "http://www.cohowinery.com")> _
Public price As Decimal
End Class
Remarques
Contient XmlSerializerNamespaces une collection d’espaces de noms XML, chacun avec un préfixe associé. Utilise XmlSerializer une instance de la XmlSerializerNamespaces classe pour créer des noms qualifiés dans un document XML.
Les espaces de noms XML contenus dans le XmlSerializerNamespaces fichier doivent être conformes à la spécification W3C nommée Namespaces in XML.
Les espaces de noms XML permettent de qualifier les noms d’éléments et d’attributs XML dans des documents XML. Un nom qualifié se compose d’un préfixe et d’un nom local, séparés par un signe deux-points. Les fonctions de préfixe ne sont qu’un espace réservé ; il est mappé à un URI qui spécifie un espace de noms. La combinaison de l’espace de noms d’URI géré universellement et du nom local produit un nom qui est garanti être universellement unique.
Pour créer des noms qualifiés dans un document XML :
Créez une XmlSerializerNamespaces instance.
Add chaque paire de préfixes et d’espaces de noms que vous souhaitez utiliser pour l’instance.
Appliquez l’attribut approprié.NET à chaque propriété ou classe que le XmlSerializer sérialise dans un document XML. Les attributs disponibles sont les suivants :
Définissez la
Namespacepropriété de chaque attribut sur l’une des valeurs d’espace de noms de l’objet XmlSerializerNamespaces .Passez la XmlSerializerNamespacesSerialize méthode du XmlSerializer.
Note
La création d’un espace de noms vide et d’une paire de préfixes n’est pas prise en charge. Autrement dit, vous ne pouvez pas créer une paire à l’aide du code suivant :
XmlSerializerNamespaces ns = new XmlSerializerNamespaces();
ns.Add("", "");
Dim ns As XmlSerializerNamespaces ns = New XmlSerializerNamespaces()
ns.Add("", "")
Constructeurs
| Nom | Description |
|---|---|
| XmlSerializerNamespaces() |
Initialise une nouvelle instance de la classe XmlSerializerNamespaces. |
| XmlSerializerNamespaces(XmlQualifiedName[]) |
Initialise une nouvelle instance de la classe XmlSerializerNamespaces. |
| XmlSerializerNamespaces(XmlSerializerNamespaces) |
Initialise une nouvelle instance de la XmlSerializerNamespaces classe à l’aide de l’instance spécifiée contenant |
Propriétés
| Nom | Description |
|---|---|
| Count |
Obtient le nombre de paires de préfixes et d’espaces de noms dans la collection. |
Méthodes
| Nom | Description |
|---|---|
| Add(String, String) |
Ajoute un préfixe et une paire d’espaces de noms à un XmlSerializerNamespaces objet. |
| Equals(Object) |
Détermine si l’objet spécifié est égal à l’objet actuel. (Hérité de Object) |
| GetHashCode() |
Sert de fonction de hachage par défaut. (Hérité de Object) |
| GetType() |
Obtient la Type de l’instance actuelle. (Hérité de Object) |
| MemberwiseClone() |
Crée une copie superficielle du Objectactuel. (Hérité de Object) |
| ToArray() |
Obtient le tableau de paires de préfixes et d’espaces de noms dans un XmlSerializerNamespaces objet. |
| ToString() |
Retourne une chaîne qui représente l’objet actuel. (Hérité de Object) |