Udostępnij za pośrednictwem


XmlNameTable Klasa

Definicja

Tabela obiektów ciągów atomizowanego.

public ref class XmlNameTable abstract
public abstract class XmlNameTable
type XmlNameTable = class
Public MustInherit Class XmlNameTable
Dziedziczenie
XmlNameTable
Pochodne

Przykłady

Poniższy przykład porównuje dwie nazwy elementów.


// Add the element names to the NameTable.
NameTable nt = new NameTable();
object book = nt.Add("book");
object title = nt.Add("title");

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

 while (reader.Read()) {
    if (reader.NodeType == XmlNodeType.Element) {
      // Cache the local name to prevent multiple calls to the LocalName property.
      object localname = reader.LocalName;

      // Do a comparison between the object references. This just compares pointers.
      if (book == localname) {
          // Add additional processing here.
      }
      // Do a comparison between the object references. This just compares pointers.
      if (title == localname) {
         // Add additional processing here.
      }
    }
 }  // End While

// Close the reader.
reader.Close();
' Add the element names to the NameTable.
Dim nt As New NameTable()
Dim book As Object = nt.Add("book")
Dim title As Object = nt.Add("title")

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

While reader.Read()
    If reader.NodeType = XmlNodeType.Element Then
        ' Cache the local name to prevent multiple calls to the LocalName property.
        Dim localname As Object = reader.LocalName
        
        ' Do a comparison between the object references. This just compares pointers.
        If book Is localname Then
           ' Add additional processing here.
        End If 
        ' Do a comparison between the object references. This just compares pointers.
        If title Is localname Then
           ' Add additional processing here.
        End If 
    End If
End While 

' Close the reader.
reader.Close()

Uwagi

Kilka klas, takich jak XmlDocument i XmlReader, używa XmlNameTable klasy wewnętrznie do przechowywania nazw atrybutów i elementów. Gdy nazwa elementu lub atrybutu występuje wiele razy w dokumencie XML, jest ona przechowywana tylko raz w pliku XmlNameTable.

Nazwy są przechowywane jako typy obiektów środowiska uruchomieniowego języka wspólnego (CLR). Umożliwia to wykonywanie porównań obiektów w tych ciągach zamiast droższego porównania ciągów. Te obiekty ciągów są określane jako "atomizowane ciągi".

XmlNameTable jest implementowany w NameTable klasie .

Konstruktory

XmlNameTable()

Inicjuje nowe wystąpienie klasy XmlNameTable.

Metody

Add(Char[], Int32, Int32)

Gdy zastąpisz klasę pochodną, atomizuje określony ciąg i dodaje go do klasy XmlNameTable.

Add(String)

Gdy zastąpisz klasę pochodną, atomizuje określony ciąg i dodaje go do klasy XmlNameTable.

Equals(Object)

Określa, czy dany obiekt jest taki sam, jak bieżący obiekt.

(Odziedziczone po Object)
Get(Char[], Int32, Int32)

Po zastąpieniu w klasie pochodnej pobiera z atomyzowany ciąg zawierający te same znaki co określony zakres znaków w danej tablicy.

Get(String)

Po przesłonięciu w klasie pochodnej pobiera z atomyzowany ciąg zawierający tę samą wartość co określony ciąg.

GetHashCode()

Służy jako domyślna funkcja skrótu.

(Odziedziczone po Object)
GetType()

Type Pobiera wartość bieżącego wystąpienia.

(Odziedziczone po Object)
MemberwiseClone()

Tworzy płytkią kopię bieżącego Objectelementu .

(Odziedziczone po Object)
ToString()

Zwraca ciąg reprezentujący bieżący obiekt.

(Odziedziczone po Object)

Dotyczy

Zobacz też