XmlNamespaceManager Sınıf
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
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ı nsmanager
bir 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. |