Nota
O acceso a esta páxina require autorización. Pode tentar iniciar sesión ou modificar os directorios.
O acceso a esta páxina require autorización. Pode tentar modificar os directorios.
XmlDocuments, cuando se crea, tienen una tabla de nombres creada específicamente para ese documento. Cuando se carga XML en el documento, o se crean nuevos elementos o atributos, los nombres de atributo y elemento se colocan en XmlNameTable. También puede crear un XmlDocument usando una NameTable existente de otro documento. Cuando XmlDocuments se crea con el constructor que toma un parámetro XmlNameTable , el documento tiene acceso a los nombres de nodo, los espacios de nombres y los prefijos ya almacenados en XmlNameTable. Independientemente de cómo se cargue la tabla de nombres con nombres, una vez almacenados los nombres en la tabla, los nombres se pueden comparar rápidamente mediante la comparación de objetos en lugar de la comparación de cadenas. Las cadenas también se pueden agregar a la tabla de nombres mediante .Add En el ejemplo de código siguiente se muestra una tabla de nombres que se va a crear y la cadena MyString que se agrega a la tabla. Después, se crea un XmlDocument con esa tabla y los nombres de elemento y atributo de Myfile.xml se agregan a la tabla de nombres existente.
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");
En el ejemplo de código siguiente se muestra la creación de un documento, dos nuevos elementos que se agregan al documento, que también los agrega a la tabla de nombres del documento y la comparación de objetos en los nombres.
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))
{ ...
El escenario anterior de una tabla de nombres que se pasa entre dos documentos es típico cuando se procesa repetidamente el mismo tipo de documento, como los documentos de pedido en un sitio de comercio electrónico, que se ajustan a un esquema de lenguaje de definición de esquemas XML (XSD) o definición de tipo de documento (DTD) y se repiten las mismas cadenas. El uso de la misma tabla de nombres proporciona una mejora del rendimiento, ya que el mismo nombre de elemento se produce en varios documentos.