0 di 1 hanno valutato il contenuto utile: Valuta questo argomento

Classe NameTable

Implementa una classe XmlNameTable a thread singolo.

Spazio dei nomi: System.Xml
Assembly: System.Xml (in system.xml.dll)

public class NameTable : XmlNameTable
public class NameTable extends XmlNameTable
public class NameTable extends XmlNameTable

Varie classi, quali XmlDocument e XmlReader, utilizzano internamente la classe NameTable per memorizzare i nomi di attributi e di elementi. Quando il nome di un elemento o di un attributo ricorre più volte in un documento XML, viene memorizzato una sola volta in NameTable.

I nomi vengono memorizzati come tipi di oggetti CLR (Common Language Runtime). In questo modo è possibile confrontare gli oggetti sulle stringhe invece che eseguire l'operazione più complessa del confronto tra le stringhe. Gli oggetti stringa sono definiti stringhe suddivise in elementi di base.

Nell'esempio seguente vengono confrontati due nomi di elementi:


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.
 }


//Create the reader.
XmlTextReader rdr = new XmlTextReader("book.xml");
NameTable nt = new NameTable();
String name = nt.Add("book");

while (rdr.Read()) {
}
if (rdr.get_NameTable().Get("book").Equals(name)) {
    Console.WriteLine("matches!");
}

Il documento è risultato utile?
(2000 caratteri rimanenti)
Contenuto della community Aggiungi
Microsoft sta conducendo un sondaggio in linea per comprendere l'opinione degli utenti in merito al sito Web di MSDN. Se si sceglie di partecipare, quando si lascia il sito Web di MSDN verrà visualizzato il sondaggio in linea.

Si desidera partecipare?