Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
XmlDocuments, al momento della creazione, ha una tabella dei nomi creata in modo specifico per tale documento. Quando il codice XML viene caricato nel documento o vengono creati nuovi elementi o attributi, gli attributi e i nomi degli elementi vengono inseriti in XmlNameTable. È anche possibile creare un xmlDocument usando una tabella NameTable esistente da un altro documento. Quando XmlDocuments viene creato con il costruttore che accetta un parametro XmlNameTable , il documento ha accesso ai nomi dei nodi, agli spazi dei nomi e ai prefissi già archiviati in XmlNameTable. Indipendentemente dal modo in cui la tabella dei nomi viene caricata con i nomi, dopo che i nomi vengono archiviati nella tabella, i nomi possono essere confrontati rapidamente usando il confronto tra oggetti anziché il confronto tra stringhe. È anche possibile aggiungere stringhe alla tabella dei nomi usando .Add Nell'esempio di codice seguente viene illustrata una tabella dei nomi creata e la stringa MyString aggiunta alla tabella. Successivamente, viene creato un XmlDocument usando tale tabella e i nomi di elemento e attributo in Myfile.xml vengono aggiunti alla tabella dei nomi esistente.
Dim nt As New NameTable()
nt.Add("MyString")
Dim doc As New XmlDocument(nt)
doc.Load("Myfile.xml")
NameTable nt = new NameTable();
nt.Add("MyString");
XmlDocument doc = new XmlDocument(nt);
doc.Load("Myfile.xml");
Nell'esempio di codice seguente viene illustrata la creazione di un documento, due nuovi elementi aggiunti al documento, che li aggiunge anche alla tabella dei nomi del documento e il confronto degli oggetti sui nomi.
Dim doc1 As XmlDocument = imp.CreateDocument()
Dim node1 As XmlElement = doc.CreateElement("node1")
Dim doc2 As XmlDocument = imp.CreateDocument()
Dim node2 As XmlElement = doc.CreateElement("node2")
if (CType(node1.Name, object) = CType(node2.Name, object))
XmlDocument doc1 = imp.CreateDocument();
node1 = doc1.CreateElement ("node1");
XmlDocument doc2 = imp.CreateDocument();
node2 = doc2.CreateElement ("node1");
if (((object)node1.Name) == ((object)node2.Name))
{ ...
Lo scenario precedente di una tabella dei nomi passata tra due documenti è tipico quando lo stesso tipo di documento viene elaborato ripetutamente, ad esempio i documenti di ordine in un sito di e-commerce, che sono conformi a uno schema XSD (XML Schema Definition Language) o alla definizione del tipo di documento (DTD) e le stesse stringhe vengono ripetute. L'uso della stessa tabella dei nomi offre un miglioramento delle prestazioni, perché lo stesso nome di elemento si verifica in più documenti.