Estoy trabajando con un documento XML que contiene una estructura que se parece a esto:¿Por qué SelectSingleNode devuelve nulo?
<MT>
<Events>
<event id="1">
<field name="blah" value="a_value" type="atype" />
.
.
.
</event>
</Events>
</MT>
Actualmente estoy cargando esto desde un archivo en un documento XML de esta manera:
XmlDocument xdoc = new XmlDocument();
xdoc.Load("somefile.xml"); //Successfully loads btw
Sin embargo
estoy corriendo en un problema y sólo con éste documento en particular cuando trato de ejecutar la siguiente línea de código:
estoy en el equipo de perforación ¿Puedo rastrear adivinando que esto está devolviendo nulo debido a un problema con el uso de un atributo llamado 'id' o me falta algo en el código?
Respondiendo a mi propia pregunta. XmlNameTable se utiliza para optimizar las comparaciones de cadenas y supongo que la razón por la que puede darle a XmlNamespaceManager una tabla de nombres existente permite realizar comparaciones rápidas con los elementos de XmlDocument, ya que estos comparten el NameTable. –
Su actualización parece tener sentido. Intentaba mostrar una forma abreviada de xml y olvidé publicar el espacio de nombres. Gracias por tomarse el tiempo extra para tratar de resolver esto. Una vez que eliminé el espacio de nombres del xml original, todo salió como debería. Definitivamente vale más estudiar el espacio de nombres System.Xml. –