2009-02-28 8 views
0
var xmlDoc = new XmlDocument(); 
xmlDoc.Load("XMLFile1.xml"); 
XmlNamespaceManager manager = new XmlNamespaceManager(xmlDoc.NameTable); 
manager.AddNamespace("frbny", "urn:toto"); 
var curs = xmlDoc.SelectNodes("/frbny:DataSet/frbny:Series/frbny:Key/frbny:CURR"); 
var values = xmlDoc.SelectNodes("/frbny:DataSet/frbny:Series/frbny:Obs/frbny:OBS_VALUE"); 

Warum funktioniert dieser Code nicht? Es wirft mit dem ersten xmlDoc.selectNodes und sagte, dass er nicht den Namespace-Manager oder die XsltContext findet ...Warum XmlDocument werfen, wenn diese XPath-Anfrage ausgeführt wird?

Ich habe das gleiche wie hier getan: http://support.microsoft.com/kb/318545

Antwort

2

Sie vorbei nicht in der Namespace-Manager zum Aufruf der Auswahlknoten, aber Sie verwenden Namespaces im X-Pfad.

var curs = xmlDoc.SelectNodes("/frbny:DataSet/frbny:Series/frbny:Key/frbny:CURR", manager); 

Wird die Ausnahme verhindern.

+0

Es ist eine Schande, danke dir ... –

Verwandte Themen