Compartilhar via


XmlNamespaceManager(XmlNameTable) Construtor

Definição

Inicializa uma nova instância da classe XmlNamespaceManager com o XmlNameTable especificado.

public:
 XmlNamespaceManager(System::Xml::XmlNameTable ^ nameTable);
public XmlNamespaceManager (System.Xml.XmlNameTable nameTable);
new System.Xml.XmlNamespaceManager : System.Xml.XmlNameTable -> System.Xml.XmlNamespaceManager
Public Sub New (nameTable As XmlNameTable)

Parâmetros

nameTable
XmlNameTable

O XmlNameTable a ser usado.

Exceções

null é passado para o construtor.

Exemplos

O exemplo a seguir cria um XmlNamespaceManager usando a tabela de nomes do leitor.

      XmlTextReader^ reader = gcnew XmlTextReader( "myfile.xml" );
      XmlNamespaceManager^ nsmanager = gcnew 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 ) ) );
      }
   }

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

Comentários

A tabela de nomes é usada para pesquisar prefixos e namespaces. Uma tabela de nomes existente com cadeias de caracteres pré-atomizadas pode ser especificada no construtor. Há várias vantagens em fazê-lo. Por exemplo, se a tabela de nomes de um XmlReader objeto for usada, após cada leitura, qualquer namespace e cadeias de caracteres de prefixo enviadas para a tabela de nomes poderão ser reutilizados por XmlNamespaceManager.

Para obter mais informações sobre cadeias de caracteres atomizadas, consulte XmlNameTable.

Observação

Se você especificar uma tabela de nomes existente, todos os namespaces na tabela de nomes não serão adicionados automaticamente a XmlNamespaceManager. Você deve usar AddNamespace e RemoveNamespace para adicionar ou remover namespaces.

Aplica-se a

Confira também