Partager via


XmlNameTable Classe

Définition

Table d'objets de chaînes atomisées.

public ref class XmlNameTable abstract
public abstract class XmlNameTable
type XmlNameTable = class
Public MustInherit Class XmlNameTable
Héritage
XmlNameTable
Dérivé

Exemples

L’exemple suivant compare deux noms d’éléments.


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

Remarques

Plusieurs classes, telles que XmlDocument et XmlReader, utilisent la XmlNameTable classe en interne pour stocker les noms d’attributs et d’éléments. Lorsqu'un nom d'élément ou d'attribut apparaît plusieurs fois dans un document XML, il n'est stocké qu'une seule fois dans le XmlNameTable.

Les noms sont stockés sous la forme de types d'objets CLR. Ceci vous permet d'effectuer des comparaisons d'objets avec ces chaînes plutôt que des comparaisons de chaînes plus coûteuses. Ces objets de chaîne sont appelés « chaînes atomisées ».

XmlNameTable est implémenté dans la NameTable classe .

Constructeurs

XmlNameTable()

Initialise une nouvelle instance de la classe XmlNameTable.

Méthodes

Add(Char[], Int32, Int32)

En cas de substitution dans une classe dérivée, atomise la chaîne spécifiée et l'ajoute à XmlNameTable.

Add(String)

En cas de substitution dans une classe dérivée, atomise la chaîne spécifiée et l'ajoute à XmlNameTable.

Equals(Object)

Détermine si l'objet spécifié est égal à l'objet actuel.

(Hérité de Object)
Get(Char[], Int32, Int32)

En cas de substitution dans une classe dérivée, obtient la chaîne atomisée contenant les mêmes caractères que la plage de caractères spécifiée dans le tableau donné.

Get(String)

En cas de substitution dans une classe dérivée, obtient la chaîne atomisée contenant la même valeur que la chaîne spécifiée.

GetHashCode()

Fait office de fonction de hachage par défaut.

(Hérité de Object)
GetType()

Obtient le Type de l'instance actuelle.

(Hérité de Object)
MemberwiseClone()

Crée une copie superficielle du Object actuel.

(Hérité de Object)
ToString()

Retourne une chaîne qui représente l'objet actuel.

(Hérité de Object)

S’applique à

Voir aussi