XmlSerializerNamespaces 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.
Tartalmazza azOKAT az XML-névtereket és előtagokat, amelyekkel XmlSerializer minősített neveket hozhat létre egy XML-dokumentumpéldányban.
public ref class XmlSerializerNamespaces
public class XmlSerializerNamespaces
type XmlSerializerNamespaces = class
Public Class XmlSerializerNamespaces
- Öröklődés
-
XmlSerializerNamespaces
Példák
Az alábbi példa létrehoz egy XmlSerializerNamespaces objektumot, és két előtagot és névtérpárt ad hozzá. A példa ezután átadja a XmlSerializerNamespaces metódusnak Serialize , amely egy Books objektumot szerializál egy XML-dokumentumba. Az objektum használatával a XmlSerializerNamespaces metódus minden Serialize XML-elemet és attribútumot a két névtér egyikével minősít.
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
Megjegyzések
Ez XmlSerializerNamespaces xml-névterek gyűjteményét tartalmazza, amelyek mindegyike egy-egy társított előtaggal rendelkezik. Az XmlSerializer osztály egy példányával XmlSerializerNamespaces minősített neveket hoz létre egy XML-dokumentumban.
A XmlSerializerNamespaces megadott XML-névtereknek meg kell felelniük az XML-ben névterek nevű W3C-specifikációnak.
Az XML-névterek lehetővé teszik az XML-dokumentumok XML-elemeinek és attribútumainak nevének minősítését. A minősített név egy előtagból és egy helyi névből áll, kettősponttal elválasztva. Az előtag csak helyőrzőként működik; egy névteret meghatározó URI-ra van leképezve. Az univerzálisan felügyelt URI-névtér és a helyi név kombinációja olyan nevet eredményez, amely garantáltan univerzálisan egyedi.
Minősített nevek létrehozása XML-dokumentumban:
Hozzon létre egy XmlSerializerNamespaces példányt.
Add a példányhoz használni kívánt előtagok és névtérpárok.
Alkalmazza a megfelelő.NET attribútumot minden olyan tulajdonságra vagy osztályra, amelyet a XmlSerializer szerializál egy XML-dokumentumba. Az elérhető attribútumok a következők:
Állítsa az
Namespaceegyes attribútumok tulajdonságát az objektum névtérértékeinek egyikére XmlSerializerNamespaces .Adja át a XmlSerializerNamespacesSerialize metódust a XmlSerializer.
Note
Az üres névtér és előtagpár létrehozása nem támogatott. Vagyis nem hozhat létre párokat a következő kóddal:
XmlSerializerNamespaces ns = new XmlSerializerNamespaces();
ns.Add("", "");
Dim ns As XmlSerializerNamespaces ns = New XmlSerializerNamespaces()
ns.Add("", "")
Konstruktorok
| Name | Description |
|---|---|
| XmlSerializerNamespaces() |
Inicializálja a XmlSerializerNamespaces osztály új példányát. |
| XmlSerializerNamespaces(XmlQualifiedName[]) |
Inicializálja a XmlSerializerNamespaces osztály új példányát. |
| XmlSerializerNamespaces(XmlSerializerNamespaces) |
Inicializálja az XmlSerializerNamespaces osztály új példányát az előtag- és névtérpárok gyűjteményét tartalmazó megadott példány |
Tulajdonságok
| Name | Description |
|---|---|
| Count |
Lekéri a gyűjtemény előtag- és névtérpárjainak számát. |
Metódusok
| Name | Description |
|---|---|
| Add(String, String) |
Előtagot és névtérpárt ad hozzá egy XmlSerializerNamespaces objektumhoz. |
| Equals(Object) |
Meghatározza, hogy a megadott objektum egyenlő-e az aktuális objektummal. (Öröklődés forrása Object) |
| GetHashCode() |
Ez az alapértelmezett kivonatoló függvény. (Öröklődés forrása Object) |
| GetType() |
Lekéri az Type aktuális példányt. (Öröklődés forrása Object) |
| MemberwiseClone() |
Az aktuális Objectpéldány sekély másolatát hozza létre. (Öröklődés forrása Object) |
| ToArray() |
Lekéri egy objektum előtag- és névtérpárjainak XmlSerializerNamespaces tömbét. |
| ToString() |
Az aktuális objektumot jelképező sztringet ad vissza. (Öröklődés forrása Object) |