NameTable Classe

Definição

Implementa um XmlNameTable single-threaded.

public ref class NameTable : System::Xml::XmlNameTable
public class NameTable : System.Xml.XmlNameTable
type NameTable = class
    inherit XmlNameTable
Public Class NameTable
Inherits XmlNameTable
Herança
NameTable

Exemplos

O exemplo a seguir compara dois nomes de elemento.

NameTable^ nt = gcnew NameTable;
Object^ book = nt->Add( "book" );
Object^ price = nt->Add( "price" );

// Create the reader.
XmlReaderSettings ^ settings = gcnew XmlReaderSettings;
settings->NameTable = nt;
XmlReader^ reader = XmlReader::Create( (String^)"books.xml", settings );
reader->MoveToContent();
reader->ReadToDescendant( "book" );
if ( System::Object::ReferenceEquals( book, reader->Name ) )
{
   
   // Do additional processing.
}

NameTable nt = new NameTable();
object book = nt.Add("book");
object price = nt.Add("price");

// Create the reader.
XmlReaderSettings settings = new XmlReaderSettings();
settings.NameTable = nt;
XmlReader reader = XmlReader.Create("books.xml", settings);

reader.MoveToContent();
reader.ReadToDescendant("book");

 if (System.Object.ReferenceEquals(book, reader.Name)) {
     // Do additional processing.
 }

   Dim nt As NameTable  = New NameTable()
   Dim book As object = nt.Add("book")
   Dim price As object = nt.Add("price")

   ' Create the reader.
   Dim settings As XmlReaderSettings = New XmlReaderSettings()
   settings.NameTable = nt
   Dim reader As XmlReader = XmlReader.Create("books.xml", settings)

   reader.MoveToContent()
   reader.ReadToDescendant("book")

    If (System.Object.ReferenceEquals(book, reader.Name)) 
        ' Do additional processing.
    End If

Comentários

Várias classes, como XmlDocument e XmlReader, usam a NameTable classe internamente para armazenar nomes de atributo e elemento. Quando um elemento ou nome de atributo ocorre várias vezes em um documento XML, ele é armazenado apenas uma vez no NameTable.

Os nomes são armazenados como tipos de objeto CLR (Common Language Runtime). Isso permite que você faça comparações de objeto nessas cadeias de caracteres em vez de uma comparação de cadeia de caracteres mais cara. Esses objetos de cadeia de caracteres são chamados de cadeias de caracteres atomizadas.

Construtores

NameTable()

Inicializa uma nova instância da classe NameTable.

Métodos

Add(Char[], Int32, Int32)

Atomizes a cadeia de caracteres especificada e adiciona-a ao NameTable.

Add(String)

Atomizes a cadeia de caracteres especificada e adiciona-a ao NameTable.

Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
Get(Char[], Int32, Int32)

Obtém a cadeia de caracteres atomizada que contém os mesmos caracteres que o intervalo especificado de caracteres na matriz fornecida.

Get(String)

Obtém a cadeia de caracteres atomizada com o valor especificado.

GetHashCode()

Serve como a função de hash padrão.

(Herdado de Object)
GetType()

Obtém o Type da instância atual.

(Herdado de Object)
MemberwiseClone()

Cria uma cópia superficial do Object atual.

(Herdado de Object)
ToString()

Retorna uma cadeia de caracteres que representa o objeto atual.

(Herdado de Object)

Aplica-se a