XmlNamespaceManager Sınıf

Tanım

Bir koleksiyona ad alanlarını çözümler, ekler ve kaldırır ve bu ad alanları için kapsam yönetimi sağlar.

public ref class XmlNamespaceManager : System::Collections::IEnumerable, System::Xml::IXmlNamespaceResolver
public ref class XmlNamespaceManager : System::Collections::IEnumerable
public class XmlNamespaceManager : System.Collections.IEnumerable, System.Xml.IXmlNamespaceResolver
public class XmlNamespaceManager : System.Collections.IEnumerable
type XmlNamespaceManager = class
    interface IEnumerable
    interface IXmlNamespaceResolver
type XmlNamespaceManager = class
    interface IEnumerable
type XmlNamespaceManager = class
    interface IXmlNamespaceResolver
    interface IEnumerable
Public Class XmlNamespaceManager
Implements IEnumerable, IXmlNamespaceResolver
Public Class XmlNamespaceManager
Implements IEnumerable
Devralma
XmlNamespaceManager
Türetilmiş
Uygulamalar

Açıklamalar

Ad alanlarının XML belgelerinde nasıl bildirilip kullanıldığı hakkında genel bilgi için bkz. XML Belgesinde Ad Alanlarını Yönetme.

XmlNamespaceManager ön ekleri ve ad alanlarını dize olarak depolar. Bu sınıfla gerçekleştirebileceğiniz yönetim ve arama görevlerinin özeti aşağıdadır. Daha fazla bilgi ve örnek için her yöntem veya özelliğin başvuru sayfasının bağlantılarını izleyin.

Amaç Kullanın
Ad alanı ekleme AddNamespace yöntemi
Ad alanını kaldırma RemoveNamespace yöntemi
Varsayılan ad alanının URI'sini bulma DefaultNamespace Özellik
Ad alanı ön ekinin URI'sini bulma LookupNamespace yöntemi
Ad alanı URI'sinin ön ekini bulma LookupPrefix yöntemi
Geçerli düğümdeki ad alanlarının listesini alma GetNamespacesInScope yöntemi
Ad alanı kapsamı PushScope ve PopScope yöntemleri
Bir ön ekin geçerli kapsamda tanımlanıp tanımlanmadığını denetleyin HasNamespace yöntemi
Ön ekleri ve URI'leri aramak için kullanılan ad tablosunu alma NameTable Özellik

Ad alanı yöneticisine ad alanları eklemek için bir XmlNamespaceManager nesnesi oluşturup yöntemini kullanırsınız AddNamespace . Varsayılan ön ek ve ad alanı çiftleri, oluşturma işleminde ad alanı yöneticisine otomatik olarak eklenir.

Ad alanı yöneticisini oluşturduğunuzda , veya sınıfından XmlReaderbir ad tablosu belirtebilir ve ardından yöntemini kullanarak AddNamespace ad alanlarını ekleyebilirsiniz.XmlDocument XsltContext

Ad alanı nitelikli öğe ve öznitelik adlarına SelectNodes başvuran XPath sorgu ifadelerini yürütmek için nesnesini sınıfının veya SelectSingleNode yöntemine XmlDocument parametre olarak sağlayabilirsinizXmlNamespaceManager.

Ad alanı yöneticisi, ön eklerin ve ad alanlarının zaten doğrulandığını ve W3C Ad Alanları belirtimine uygun olduğunu varsayar. Ad alanı yöneticisi herhangi bir doğrulama gerçekleştirmez.

Ad alanı yöneticisi, yöntemi kullanılarak eklendiğinde ve veya LookupPrefix yöntemi kullanılarak AddNamespace bir arama gerçekleştirildiğinde LookupNamespace dizeleri atomize eder.

Ad alanı yöneticisi, ad alanlarını eklemeye ve almaya ek olarak numaralandırma desteği uygular. yapısını kullanarak foreach ad alanı yöneticisine kaydedilen bilgiler arasında döngü yapabilirsiniz. Örneğin, adlı nsmanagerbir ad alanı yöneticisi oluşturursanız, kullanarak foreach (String prefix in nsmanager)tabloda yineleyebilirsiniz.

Ad alanı yöneticisi, ön ek ve ad alanlarıyla nesne olarak bir dize karşılaştırması sağladığından, bir dizenin doğrudan karşılaştırması üzerinde ad alanı yöneticisi kullanılırken performans artışı olur.

Aşağıdaki kod örneği ön ekin xsd ad alanı URI'sine http://www.w3.org/2001/XMLSchema nasıl bağlanacağını ve ad alanı yöneticisine nasıl ekleneceğini gösterir:

nsmgr.AddNamespace("xsd", "http://www.w3.org/2001/XMLSchema")  
nsmgr.AddNamespace("xsd", "http://www.w3.org/2001/XMLSchema");  

Ardından yöntemini kullanarak LookupNamespace ad alanını bulabilirsiniz:

nsmgr.LookupNamespace("xsd")  
nsmgr.LookupNamespace("xsd");  

Aşağıdaki örnek, XmlNamespaceManager XML okuyucusundan ad tablosunu kullanarak bir oluşturur:

Dim reader As New XmlTextReader("myfile.xml")  
Dim nsmanager As New XmlNamespaceManager(reader.NameTable)  
nsmanager.AddNamespace("msbooks", "www.microsoft.com/books")  
nsmanager.PushScope()  
nsmanager.AddNamespace("msstore", "www.microsoft.com/store")  
While reader.Read()  
    Console.WriteLine("Reader Prefix:{0}", reader.Prefix)  
    Console.WriteLine("XmlNamespaceManager Prefix:{0}",  
     nsmanager.LookupPrefix(nsmanager.NameTable.Get(reader.NamespaceURI)))  
End While  
XmlTextReader reader = new XmlTextReader("myfile.xml");  
XmlNamespaceManager nsmanager = new XmlNamespaceManager(reader.NameTable);  
nsmanager.AddNamespace("msbooks", "www.microsoft.com/books");  
nsmanager.PushScope();  
nsmanager.AddNamespace("msstore", "www.microsoft.com/store");  
while (reader.Read())  
{  
    Console.WriteLine("Reader Prefix:{0}", reader.Prefix);  
    Console.WriteLine("XmlNamespaceManager Prefix:{0}",  
    nsmanager.LookupPrefix(nsmanager.NameTable.Get(reader.NamespaceURI)));  
}  

Oluşturucular

XmlNamespaceManager(XmlNameTable)

belirtilen XmlNameTableile sınıfının yeni bir örneğini XmlNamespaceManager başlatır.

Özellikler

DefaultNamespace

Varsayılan ad alanı için ad alanı URI'sini alır.

NameTable

Bu nesneyle ilişkili öğesini XmlNameTable alır.

Yöntemler

AddNamespace(String, String)

Verilen ad alanını koleksiyona ekler.

Equals(Object)

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

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

içindeki ad alanları XmlNamespaceManagerarasında yineleme yapmak için kullanılacak bir numaralandırıcı döndürür.

GetHashCode()

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

(Devralındığı yer: Object)
GetNamespacesInScope(XmlNamespaceScope)

Şu anda kapsamda olan ad alanlarını listelemek için kullanılabilecek ön eke göre anahtarlanan ad alanı adlarından oluşan bir koleksiyon alır.

GetType()

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

(Devralındığı yer: Object)
HasNamespace(String)

Sağlanan ön ekin geçerli gönderilen kapsam için tanımlanmış bir ad alanına sahip olup olmadığını belirten bir değer alır.

LookupNamespace(String)

Belirtilen ön ek için ad alanı URI'sini alır.

LookupPrefix(String)

Verilen ad alanı URI'si için bildirilen ön eki bulur.

MemberwiseClone()

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

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

Yığından bir ad alanı kapsamı açar.

PushScope()

Bir ad alanı kapsamını yığına gönderir.

RemoveNamespace(String, String)

Verilen ön ek için verilen ad alanını kaldırır.

ToString()

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

(Devralındığı yer: Object)

Uzantı Metotları

Cast<TResult>(IEnumerable)

öğesinin IEnumerable öğelerini belirtilen türe atar.

OfType<TResult>(IEnumerable)

Bir öğesinin IEnumerable öğelerini belirtilen türe göre filtreler.

AsParallel(IEnumerable)

Sorgunun paralelleştirilmesini sağlar.

AsQueryable(IEnumerable)

bir IEnumerable öğesini öğesine IQueryabledönüştürür.

Şunlara uygulanır

Ayrıca bkz.