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 ......
答案 0 :(得分:2)
您没有将命名空间管理器传递给select节点调用,但是您在xpath中使用了命名空间。
var curs = xmlDoc.SelectNodes("/frbny:DataSet/frbny:Series/frbny:Key/frbny:CURR", manager);
将阻止异常。