Perché ottenere un attributo con XPath fallire?

voti
1

Sto cercando di ottenere un attributo da un XML utilizzando XPath. Quando eseguo il codice getta un UE:

Data at the root level is invalid. Line 1, position 1.

Qui è il mio codice per ottenere l'attributo.

XmlDocument doc = new XmlDocument();
doc.LoadXml(@C:\Users\MyName\Desktop\Test.xml);                    
string attrVal = doc.SelectSingleNode(results/access/@Name).Value;
MessageBox.Show(attrVal);

Ecco il mio file xml:

<?xml version=1.0 encoding=UTF-8?>
<results date=2013-12-25>
<access Name=My-Name/>
</results>

Guardando nel dettaglio che gli errori, ho letto che potrebbe essere la protezione sul file XML (non dovrebbe essere, posso aprire in IE). È la questione mio codice, o il mio xml?

È pubblicato 31/12/2013 alle 17:47
fonte dall'utente
In altre lingue...                            


1 risposte

voti
4

LoadXml si aspetta che l'argomento sia XML, non è un nome di file:

doc.LoadXml("<hello>world</hello>");

Volevi il Loadmetodo:

doc.Load("foo.xml");
Risposto il 31/12/2013 a 17:51
fonte dall'utente

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more