XmlNamespaceManager.PushScope Metodo
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Inserisce un ambito dello spazio dei nomi nello stack.
public:
virtual void PushScope();
public virtual void PushScope ();
abstract member PushScope : unit -> unit
override this.PushScope : unit -> unit
Public Overridable Sub PushScope ()
Nell'esempio seguente vengono aggiunte coppie prefisso/spazio dei nomi a XmlNamespaceManager e quindi vengono visualizzate tutte le coppie nella raccolta.
#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
Dopo una chiamata a questo metodo, tutti gli spazi dei nomi aggiunti a (chiamando AddNamespace), appartengono all'ambito dello spazio dei nomi sottoposto a XmlNamespaceManager push.