XmlNameTable Třída

Definice

Tabulka atomizovaných řetězcových objektů

public ref class XmlNameTable abstract
public abstract class XmlNameTable
type XmlNameTable = class
Public MustInherit Class XmlNameTable
Dědičnost
XmlNameTable
Odvozené

Příklady

Následující příklad porovnává dva názvy prvků.


// 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()

Poznámky

Několik tříd, například XmlDocument a XmlReader, používat XmlNameTable třídu interně k ukládání názvů atributů a elementů. Pokud se název elementu nebo atributu vyskytuje vícekrát v dokumentu XML, je uložen pouze jednou v souboru XmlNameTable.

Názvy se ukládají jako typy objektů CLR (Common Language Runtime). To umožňuje provádět porovnání objektů s těmito řetězci, nikoli nákladnější porovnání řetězců. Tyto řetězcové objekty se označují jako atomizované řetězce.

XmlNameTable je implementována NameTable ve třídě.

Konstruktory

Name Description
XmlNameTable()

Inicializuje novou instanci XmlNameTable třídy.

Metody

Name Description
Add(Char[], Int32, Int32)

Při přepsání v odvozené třídě atomizuje zadaný řetězec a přidá jej do XmlNameTable.

Add(String)

Při přepsání v odvozené třídě atomizuje zadaný řetězec a přidá jej do XmlNameTable.

Equals(Object)

Určuje, zda je zadaný objekt roven aktuálnímu objektu.

(Zděděno od Object)
Get(Char[], Int32, Int32)

Při přepsání v odvozené třídě získá atomizovaný řetězec obsahující stejné znaky jako zadaný rozsah znaků v daném poli.

Get(String)

Při přepsání v odvozené třídě získá atomizovaný řetězec obsahující stejnou hodnotu jako zadaný řetězec.

GetHashCode()

Slouží jako výchozí funkce hash.

(Zděděno od Object)
GetType()

Získá Type aktuální instance.

(Zděděno od Object)
MemberwiseClone()

Vytvoří mělkou kopii aktuálního Object.

(Zděděno od Object)
ToString()

Vrátí řetězec, který představuje aktuální objekt.

(Zděděno od Object)

Platí pro

Viz také