problemer med xpath og namespaces
Hej Jeg har lidt problemer med at trække data ud fra min xmldoc via xpathHar nedenstående xml:
<?xml version="1.0" encoding="utf-8"?>
<Invoice xmlns="http://rep.oio.dk/ubl/xml/schemas/0p71/pip/"
xmlns:com="http://rep.oio.dk/ubl/xml/schemas/0p71/common/"
xmlns:main="http://rep.oio.dk/ubl/xml/schemas/0p71/maindoc/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://rep.oio.dk/ubl/xml/schemas/0p71/pip/
http://rep.oio.dk/ubl/xml/schemas/0p71/pip/piplax.xsd">
<com:ID>4544841</com:ID>
<com:IssueDate>2005-02-10</com:IssueDate>
</Invoice>
og følgende kode:
public void test(string filename){
XmlDocument doc = new XmlDocument();
XPathNavigator nav = doc.CreateNavigator();
XPathExpression expr = nav.Compile("//Invoice/com:ID");
doc.Load(filename);
XmlElement root = doc.DocumentElement;
//Create an XmlNamespaceManager for resolving namespaces.
XmlNamespaceManager nsmgr = new XmlNamespaceManager(doc.NameTable);
nsmgr.AddNamespace("", "http://rep.oio.dk/ubl/xml/schemas/0p71/pip/");
nsmgr.AddNamespace("com", TransVikali.nameSpaceURI_COM);
expr.SetContext(nsmgr);
XPathNodeIterator iterator = nav.Select(expr);
while (iterator.MoveNext())
{
Console.WriteLine(iterator.Current.ToString());
}
}
Problemet er at der ikke bliver udskrevet noget, altså der må være fejl i min selection.
Er der nogen der kan se fejlen ?
(Der kommer ingen fejl på koden)