XmlNamespaceManager Klas

Definitie

Hiermee worden naamruimten omgezet, toegevoegd en verwijderd uit een verzameling en wordt het bereikbeheer voor deze naamruimten geboden.

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
Overname
XmlNamespaceManager
Afgeleid
Implementeringen

Opmerkingen

Zie Naamruimten beheren in een XML-document voor algemene informatie over hoe naamruimten worden gedeclareerd en gebruikt in XML-documenten.

XmlNamespaceManager slaat voorvoegsels en naamruimten op als tekenreeksen. Hier volgt een overzicht van beheer- en opzoektaken die u met deze klasse kunt uitvoeren. Volg de koppelingen naar de referentiepagina voor elke methode of eigenschap voor meer informatie en voorbeelden.

Tot Gebruik
Een naamruimte toevoegen methode AddNamespace
Een naamruimte verwijderen methode RemoveNamespace
De URI voor de standaardnaamruimte zoeken eigenschap DefaultNamespace
De URI zoeken voor een naamruimtevoorvoegsel methode LookupNamespace
Het voorvoegsel voor een naamruimte-URI zoeken methode LookupPrefix
Een lijst met naamruimten ophalen in het huidige knooppunt methode GetNamespacesInScope
Bereik van een naamruimte methoden voor PushScope en PopScope
Controleer of een voorvoegsel is gedefinieerd in de huidige scope methode HasNamespace
De naamtabel ophalen die wordt gebruikt om voorvoegsels en URI's op te zoeken eigenschap NameTable

Als u naamruimten wilt toevoegen aan de naamruimtebeheer, maakt u een XmlNamespaceManager object en gebruikt u vervolgens de AddNamespace methode. Standaardvoorvoegsel en naamruimteparen worden automatisch toegevoegd aan de naamruimtebeheerder bij het maken.

Wanneer u de naamruimtebeheer maakt, kunt u een naamtabel opgeven uit de XmlReader, XsltContextof XmlDocument klasse en vervolgens de AddNamespace methode gebruiken om de naamruimten toe te voegen.

U kunt het XmlNamespaceManager object opgeven als parameter voor de SelectNodes of SelectSingleNode methode van de XmlDocument klasse om XPath-queryexpressies uit te voeren die verwijzen naar naamruimte-gekwalificeerde element- en kenmerknamen.

De naamruimtebeheerder gaat ervan uit dat voorvoegsels en naamruimten al zijn geverifieerd en voldoen aan de W3C-naamruimtenspecificatie . De naamruimtebeheer voert geen validatie uit.

De naamruimtebeheerder atomiseert de tekenreeksen wanneer ze worden toegevoegd met behulp van de AddNamespace methode en wanneer een zoekactie wordt uitgevoerd met behulp van de LookupNamespace of LookupPrefix methode.

De naamruimtebeheer implementeert ook opsommingsondersteuning naast het toevoegen en ophalen van naamruimten. U kunt de gegevens doorlopen die zijn opgeslagen in de naamruimtebeheer met behulp van de foreach constructie. Als u bijvoorbeeld een naamruimtebeheer met de naam nsmanagermaakt, kunt u de tabel herhalen met behulp van foreach (String prefix in nsmanager).

Omdat de naamruimtebeheer een tekenreeksvergelijking biedt met het voorvoegsel en de naamruimten als objecten, is er een prestatieverbetering bij het gebruik van naamruimtebeheer via de directe vergelijking van een tekenreeks.

In het volgende codevoorbeeld ziet u hoe u het voorvoegsel xsd koppelt aan de naamruimte-URI van http://www.w3.org/2001/XMLSchema en deze toevoegt aan de naamruimtebeheer:

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

Vervolgens kunt u de naamruimte vinden met behulp van de LookupNamespace methode:

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

In het volgende voorbeeld wordt een XmlNamespaceManager tabel gemaakt met behulp van de naamtabel van een XML-lezer:

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)));
}

Constructors

Name Description
XmlNamespaceManager(XmlNameTable)

Initialiseert een nieuw exemplaar van de XmlNamespaceManager klasse met de opgegeven XmlNameTable.

Eigenschappen

Name Description
DefaultNamespace

Hiermee haalt u de naamruimte-URI op voor de standaardnaamruimte.

NameTable

Hiermee wordt de XmlNameTable gekoppelde aan dit object opgehaald.

Methoden

Name Description
AddNamespace(String, String)

Voegt de opgegeven naamruimte toe aan de verzameling.

Equals(Object)

Bepaalt of het opgegeven object gelijk is aan het huidige object.

(Overgenomen van Object)
GetEnumerator()

Retourneert een enumerator die moet worden gebruikt om door de naamruimten in de XmlNamespaceManager.

GetHashCode()

Fungeert als de standaardhashfunctie.

(Overgenomen van Object)
GetNamespacesInScope(XmlNamespaceScope)

Hiermee haalt u een verzameling naamruimtenamen op die worden gesleuteld door voorvoegsel, dat kan worden gebruikt om de naamruimten op te sommen die momenteel binnen het bereik vallen.

GetType()

Hiermee haalt u de Type huidige instantie op.

(Overgenomen van Object)
HasNamespace(String)

Hiermee wordt een waarde opgehaald die aangeeft of het opgegeven voorvoegsel een naamruimte heeft gedefinieerd voor het huidige gepushte bereik.

LookupNamespace(String)

Hiermee haalt u de naamruimte-URI voor het opgegeven voorvoegsel op.

LookupPrefix(String)

Hiermee wordt het voorvoegsel gevonden dat is gedeclareerd voor de opgegeven naamruimte-URI.

MemberwiseClone()

Hiermee maakt u een ondiepe kopie van de huidige Object.

(Overgenomen van Object)
PopScope()

Hiermee wordt een naamruimtebereik buiten de stack weergegeven.

PushScope()

Hiermee wordt een naamruimtebereik naar de stack gepusht.

RemoveNamespace(String, String)

Hiermee verwijdert u de opgegeven naamruimte voor het opgegeven voorvoegsel.

ToString()

Retourneert een tekenreeks die het huidige object vertegenwoordigt.

(Overgenomen van Object)

Extensiemethoden

Name Description
AsParallel(IEnumerable)

Hiermee schakelt u parallelle uitvoering van een query in.

AsQueryable(IEnumerable)

Converteert een IEnumerable naar een IQueryable.

Cast<TResult>(IEnumerable)

Cast de elementen van een IEnumerable naar het opgegeven type.

OfType<TResult>(IEnumerable)

Hiermee filtert u de elementen van een IEnumerable op basis van een opgegeven type.

Van toepassing op

Zie ook