2009-02-28 76 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"); 

爲什麼這段代碼不起作用?它拋出與第一xmlDoc.SelectNodes,說他沒有找到命名空間管理或XsltContext ...爲什麼在執行此XPath請求時拋出XmlDocument?

我已經做了如下同樣的事情:http://support.microsoft.com/kb/318545

回答

2

你沒有傳入命名空間管理器添加到選擇節點調用中,但是您在xpath中使用命名空間。

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

將防止異常。

+0

真遺憾謝謝你...... – 2009-02-28 22:31:56

相關問題