XmlSerializerNamespaces XmlSerializerNamespaces XmlSerializerNamespaces XmlSerializerNamespaces Class

Definition

Enthält die XML-Namespaces und Präfixe, die von XmlSerializer zum Generieren vollständiger Namen in einer XML-Dokumentinstanz verwendet werden.Contains the XML namespaces and prefixes that the XmlSerializer uses to generate qualified names in an XML-document instance.

public ref class XmlSerializerNamespaces
public class XmlSerializerNamespaces
type XmlSerializerNamespaces = class
Public Class XmlSerializerNamespaces
Vererbung
XmlSerializerNamespacesXmlSerializerNamespacesXmlSerializerNamespacesXmlSerializerNamespaces

Beispiele

Das folgende Beispiel erstellt eine XmlSerializerNamespaces -Objekt und fügt zwei Paare aus Präfix und Namespace hinzu.The following example creates an XmlSerializerNamespaces object, and adds two prefix and namespace pairs to it. Im Beispiel übergibt dann die XmlSerializerNamespaces auf die Serialize -Methode, die serialisiert eine Books Objekt in ein XML-Dokument.The example then passes the XmlSerializerNamespaces to the Serialize method, which serializes a Books object into an XML document. Mithilfe der XmlSerializerNamespaces -Objekt, das Serialize Methode qualifiziert, jedem XML-Element oder Attribut mit einem der beiden Namespaces.Using the XmlSerializerNamespaces object, the Serialize method qualifies each XML element and attribute with one of the two namespaces.

#using <System.Xml.dll>
#using <System.dll>

using namespace System;
using namespace System::IO;
using namespace System::Xml;
using namespace System::Xml::Serialization;
public ref class Price
{
public:

   [XmlAttributeAttribute(Namespace="http://www.cpandl.com")]
   String^ currency;

   [XmlElement(Namespace="http://www.cohowinery.com")]
   Decimal price;
};

[XmlType(Namespace="http://www.cpandl.com")]
public ref class Book
{
public:

   [XmlElement(Namespace="http://www.cpandl.com")]
   String^ TITLE;

   [XmlElement(Namespace="http://www.cohowinery.com")]
   Price^ PRICE;
};

public ref class Books
{
public:

   [XmlElement(Namespace="http://www.cohowinery.com")]
   Book^ Book;
};

public ref class Run
{
public:
   static void main()
   {
      Run^ test = gcnew Run;
      test->SerializeObject( "XmlNamespaces.xml" );
   }

   void SerializeObject( String^ filename )
   {
      XmlSerializer^ s = gcnew XmlSerializer( Books::typeid );

      // Writing a file requires a TextWriter.
      TextWriter^ t = gcnew StreamWriter( filename );

      /* Create an XmlSerializerNamespaces object and add two
            prefix-namespace pairs. */
      XmlSerializerNamespaces^ ns = gcnew XmlSerializerNamespaces;
      ns->Add( "books", "http://www.cpandl.com" );
      ns->Add( "money", "http://www.cohowinery.com" );

      // Create a Book instance.
      Book^ b = gcnew Book;
      b->TITLE = "A Book Title";
      Price^ p = gcnew Price;
      p->price = (Decimal)9.95;
      p->currency = "US Dollar";
      b->PRICE = p;
      Books^ bks = gcnew Books;
      bks->Book = b;
      s->Serialize( t, bks, ns );
      t->Close();
   }
};

int main()
{
   Run::main();
}
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
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

Hinweise

Die XmlSerializerNamespaces enthält eine Auflistung von XML-Namespaces, jeweils ein Präfix zugeordnet ist.The XmlSerializerNamespaces contains a collection of XML namespaces, each with an associated prefix. Die XmlSerializer verwendet eine Instanz der XmlSerializerNamespaces Klasse, um qualifizierte Namen in einem XML-Dokument zu erstellen.The XmlSerializer uses an instance of the XmlSerializerNamespaces class to create qualified names in an XML document.

XML-Namespaces enthalten die XmlSerializerNamespaces entsprechen der Spezifikation www.w3.org Namespaces in XML.XML namespaces contained by the XmlSerializerNamespaces must conform to the www.w3.org specification named Namespaces in XML.

XML-Namespaces stellen eine Möglichkeit, die die Namen der XML-Elemente und Attribute im XML-Dokumenten zu qualifizieren.XML namespaces provide a way to qualify the names of XML elements and attributes in XML documents. Ein qualifizierter Name besteht aus einem Präfix und einem lokalen Namen, die durch einen Doppelpunkt voneinander getrennt sind.A qualified name consists of a prefix and a local name, separated by a colon. Das Präfix wird nur als Platzhalter verwendet und ist einem URI zugeordnet, der den Namespace angibt.The prefix functions only as a placeholder; it is mapped to a URI that specifies a namespace. Die Kombination aus dem global verwalteten URI-Namespace und der lokale Name erzeugt einen Namen, der garantiert ist universell eindeutig sein.The combination of the universally-managed URI namespace and the local name produces a name that is guaranteed to be universally unique.

So erstellen qualifizierte Namen in einem XML-Dokument:To create qualified names in an XML document:

  1. Erstellen Sie eine XmlSerializerNamespaces Instanz.Create an XmlSerializerNamespaces instance.

  2. Add jedes Präfix und Namespace-Paar, das mit der Instanz werden sollen.Add each prefix and namespace pair that you want to the instance.

  3. Wenden Sie das entsprechende Attribut auf jede Eigenschaft oder Klasse, die die XmlSerializer in ein XML-Dokument serialisiert.Apply the appropriate.NET attribute to each property or class that the XmlSerializer serializes into an XML document. Attribute sind verfügbar:The available attributes are:

  1. Legen Sie die Namespace -Eigenschaft jedes Attributs auf einen der Namespacewerte aus dem XmlSerializerNamespaces Objekt.Set the Namespace property of each attribute to one of the namespace values from the XmlSerializerNamespaces object.

  2. Übergeben Sie XmlSerializerNamespaces an die Serialize-Methode von XmlSerializer.Pass the XmlSerializerNamespaces to the Serialize method of the XmlSerializer.

Hinweis

Die Erstellung von ein leerer Namespace und Präfix-Paar wird nicht unterstützt.The creation of an empty namespace and prefix pair is not supported. Sie können nicht, also ein Paar mit dem folgenden Code erstellen:That is, you cannot create a pair using the following code:

XmlSerializerNamespaces ns = new XmlSerializerNamespaces();   
ns.Add("", "");  
Dim ns As XmlSerializerNamespaces ns = New XmlSerializerNamespaces()  
ns.Add("", "")  

Konstruktoren

XmlSerializerNamespaces() XmlSerializerNamespaces() XmlSerializerNamespaces() XmlSerializerNamespaces()

Initialisiert eine neue Instanz der XmlSerializerNamespaces-Klasse.Initializes a new instance of the XmlSerializerNamespaces class.

XmlSerializerNamespaces(XmlQualifiedName[]) XmlSerializerNamespaces(XmlQualifiedName[]) XmlSerializerNamespaces(XmlQualifiedName[]) XmlSerializerNamespaces(XmlQualifiedName[])

Initialisiert eine neue Instanz der XmlSerializerNamespaces-Klasse.Initializes a new instance of the XmlSerializerNamespaces class.

XmlSerializerNamespaces(XmlSerializerNamespaces) XmlSerializerNamespaces(XmlSerializerNamespaces) XmlSerializerNamespaces(XmlSerializerNamespaces) XmlSerializerNamespaces(XmlSerializerNamespaces)

Initialisiert eine neue Instanz der XmlSerializerNamespaces-Klasse unter Verwendung der angegebenen Instanz von XmlSerializerNamespaces mit einer Auflistung von Paaren aus Präfix und Namespace.Initializes a new instance of the XmlSerializerNamespaces class, using the specified instance of XmlSerializerNamespaces containing the collection of prefix and namespace pairs.

Eigenschaften

Count Count Count Count

Ruft die Anzahl der Paare aus Präfix und Namespace in der Auflistung ab.Gets the number of prefix and namespace pairs in the collection.

Methoden

Add(String, String) Add(String, String) Add(String, String) Add(String, String)

Fügt einem XmlSerializerNamespaces-Objekt ein Paar aus Präfix und Namespace hinzu.Adds a prefix and namespace pair to an XmlSerializerNamespaces object.

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Bestimmt, ob das angegebene Objekt mit dem aktuellen Objekt identisch ist.Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Fungiert als Standardhashfunktion.Serves as the default hash function.

(Inherited from Object)
GetType() GetType() GetType() GetType()

Ruft den Type der aktuellen Instanz ab.Gets the Type of the current instance.

(Inherited from Object)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.Creates a shallow copy of the current Object.

(Inherited from Object)
ToArray() ToArray() ToArray() ToArray()

Ruft das Array von Paaren aus Präfix und Namespace von einem XmlSerializerNamespaces-Objekt ab.Gets the array of prefix and namespace pairs in an XmlSerializerNamespaces object.

ToString() ToString() ToString() ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.Returns a string that represents the current object.

(Inherited from Object)

Gilt für:

Siehe auch