XmlNameTable Třída
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
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 |
| Add(String) |
Při přepsání v odvozené třídě atomizuje zadaný řetězec a přidá jej do |
| 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) |