İngilizce dilinde oku

Aracılığıyla paylaş


XmlSerializerNamespaces Sınıf

Tanım

XML belge örneğinde nitelenmiş adlar oluşturmak için kullanılan XML ad alanlarını ve ön eklerini XmlSerializer içerir.

C#
public class XmlSerializerNamespaces
Devralma
XmlSerializerNamespaces

Örnekler

Aşağıdaki örnek bir XmlSerializerNamespaces nesne oluşturur ve bu nesneye iki ön ek ve ad alanı çifti ekler. Örnek, nesnesini xml belgesine Serialize seri hale Books getirerek yöntemine geçirirXmlSerializerNamespaces. XmlSerializerNamespaces yöntemi nesnesini Serialize kullanarak her XML öğesini ve özniteliğini iki ad alanından biriyle niteler.

C#
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;
}

Açıklamalar

, XmlSerializerNamespaces her biri ilişkili ön eke sahip bir XML ad alanı koleksiyonu içerir. bir XmlSerializer XML belgesinde XmlSerializerNamespaces nitelenmiş adlar oluşturmak için sınıfının bir örneğini kullanır.

tarafından XmlSerializerNamespaces kapsanan XML ad alanları , XML'deki Ad Alanları adlı W3C belirtimine uygun olmalıdır.

XML ad alanları, XML belgelerindeki XML öğelerinin ve özniteliklerinin adlarını nitelemenin bir yolunu sağlar. Tam adı bir önek ve virgül ile ayrılmış bir yerel ad oluşur. Önek yalnızca bir yer tutucu olarak işlev görür; bir ad alanı belirten bir URI ile eşleşir. Evrensel olarak yönetilen URI ad alanı ile yerel adın birleşimi, evrensel olarak benzersiz olması garanti edilen bir ad üretir.

XML belgesinde nitelenmiş adlar oluşturmak için:

  1. Örnek XmlSerializerNamespaces oluşturma.

  2. Add örneğine eklemek istediğiniz her ön ek ve ad alanı çifti.

  3. appropriate.NET özniteliğini, xml belgesinde seri hale getiren XmlSerializer her özelliğe veya sınıfa uygulayın. Kullanılabilir öznitelikler şunlardır:

  1. Namespace Her özniteliğin özelliğini nesneden ad alanı değerlerinden XmlSerializerNamespaces birine ayarlayın.

  2. Geçiş XmlSerializerNamespaces için Serialize yöntemi XmlSerializer.

Not

Boş bir ad alanı ve ön ek çiftinin oluşturulması desteklenmez. Yani, aşağıdaki kodu kullanarak bir çift oluşturamazsınız:

C#
XmlSerializerNamespaces ns = new XmlSerializerNamespaces();   
ns.Add("", "");  

Oluşturucular

XmlSerializerNamespaces()

XmlSerializerNamespaces sınıfının yeni bir örneğini başlatır.

XmlSerializerNamespaces(XmlQualifiedName[])

XmlSerializerNamespaces sınıfının yeni bir örneğini başlatır.

XmlSerializerNamespaces(XmlSerializerNamespaces)

Ön ek ve ad alanı çiftleri XmlSerializerNamespaces koleksiyonunu içeren belirtilen örneğini kullanarak sınıfının yeni bir örneğini XmlSerializerNamespaces başlatır.

Özellikler

Count

Koleksiyondaki ön ek ve ad alanı çiftlerinin sayısını alır.

Yöntemler

Add(String, String)

Bir nesneye ön ek ve ad alanı çifti XmlSerializerNamespaces ekler.

Equals(Object)

Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler.

(Devralındığı yer: Object)
GetHashCode()

Varsayılan karma işlevi işlevi görür.

(Devralındığı yer: Object)
GetType()

Type Geçerli örneğini alır.

(Devralındığı yer: Object)
MemberwiseClone()

Geçerli Objectöğesinin sığ bir kopyasını oluşturur.

(Devralındığı yer: Object)
ToArray()

Bir XmlSerializerNamespaces nesnedeki ön ek ve ad alanı çiftleri dizisini alır.

ToString()

Geçerli nesneyi temsil eden dizeyi döndürür.

(Devralındığı yer: Object)

Şunlara uygulanır

Ürün Sürümler
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1
UWP 10.0

Ayrıca bkz.