XmlNamespaceManager.PushScope Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Legt einen Namespacebereich auf den Stapel.
public:
virtual void PushScope();
public virtual void PushScope ();
abstract member PushScope : unit -> unit
override this.PushScope : unit -> unit
Public Overridable Sub PushScope ()
Beispiele
Im folgenden Beispiel werden präfix-/Namespacepaare hinzugefügt XmlNamespaceManager und dann alle Paare in der Auflistung angezeigt.
#using <System.Xml.dll>
using namespace System;
using namespace System::IO;
using namespace System::Xml;
public ref class Sample
{
public:
Sample()
{
// Create the XmlNamespaceManager.
NameTable^ nt = gcnew NameTable;
XmlNamespaceManager^ nsmgr = gcnew XmlNamespaceManager( nt );
// Add prefix/namespace pairs to the XmlNamespaceManager.
nsmgr->AddNamespace( "", "www.wideworldimporters.com" ); //Adds a default namespace.
nsmgr->AddNamespace( "europe", "www.wideworldimporters.com/europe" );
nsmgr->PushScope(); //Pushes a namespace scope on the stack.
nsmgr->AddNamespace( "", "www.lucernepublishing.com" ); //Adds another default namespace.
nsmgr->AddNamespace( "partners", "www.lucernepublishing.com/partners" );
Console::WriteLine( "Show all the prefix/namespace pairs in the XmlNamespaceManager..." );
ShowAllNamespaces( nsmgr );
}
private:
void ShowAllNamespaces( XmlNamespaceManager^ nsmgr )
{
do
{
System::Collections::IEnumerator^ myEnum = nsmgr->GetEnumerator();
while ( myEnum->MoveNext() )
{
String^ prefix = safe_cast<String^>(myEnum->Current);
Console::WriteLine( "Prefix={0}, Namespace={1}", prefix, nsmgr->LookupNamespace( prefix ) );
}
}
while ( nsmgr->PopScope() );
}
};
int main()
{
gcnew Sample;
}
using System;
using System.IO;
using System.Xml;
public class Sample
{
public static void Main()
{
Sample test = new Sample();
}
public Sample()
{
// Create the XmlNamespaceManager.
NameTable nt = new NameTable();
XmlNamespaceManager nsmgr = new XmlNamespaceManager(nt);
// Add prefix/namespace pairs to the XmlNamespaceManager.
nsmgr.AddNamespace("", "www.wideworldimporters.com"); //Adds a default namespace.
nsmgr.AddNamespace("europe", "www.wideworldimporters.com/europe");
nsmgr.PushScope(); //Pushes a namespace scope on the stack.
nsmgr.AddNamespace("", "www.lucernepublishing.com"); //Adds another default namespace.
nsmgr.AddNamespace("partners", "www.lucernepublishing.com/partners");
Console.WriteLine("Show all the prefix/namespace pairs in the XmlNamespaceManager...");
ShowAllNamespaces(nsmgr);
}
private void ShowAllNamespaces(XmlNamespaceManager nsmgr)
{
do{
foreach (String prefix in nsmgr)
{
Console.WriteLine("Prefix={0}, Namespace={1}", prefix,nsmgr.LookupNamespace(prefix));
}
}
while (nsmgr.PopScope());
}
}
Option Explicit
Option Strict
Imports System.IO
Imports System.Xml
Public Class Sample
Public Shared Sub Main()
Dim test As New Sample()
End Sub
Public Sub New()
' Create the XmlNamespaceManager.
Dim nt As New NameTable()
Dim nsmgr As New XmlNamespaceManager(nt)
' Add prefix/namespace pairs to the XmlNamespaceManager.
nsmgr.AddNamespace("", "www.wideworldimporters.com") 'Adds a default namespace.
nsmgr.AddNamespace("europe", "www.wideworldimporters.com/europe")
nsmgr.PushScope() 'Pushes a namespace scope on the stack.
nsmgr.AddNamespace("", "www.lucernepublishing.com") 'Adds another default namespace.
nsmgr.AddNamespace("partners", "www.lucernepublishing.com/partners")
Console.WriteLine("Show all the prefix/namespace pairs in the XmlNamespaceManager...")
ShowAllNamespaces(nsmgr)
End Sub
Private Sub ShowAllNamespaces(nsmgr As XmlNamespaceManager)
Do
Dim prefix As String
For Each prefix In nsmgr
Console.WriteLine("Prefix={0}, Namespace={1}", prefix, nsmgr.LookupNamespace(prefix))
Next prefix
Loop While nsmgr.PopScope()
End Sub
End Class
Hinweise
Nach einem Aufruf dieser Methode gehören alle Namespaces, die (durch Aufrufen) AddNamespacehinzugefügt XmlNamespaceManager werden, zum Push-Namespacebereich.