【发布时间】:2021-12-10 01:09:51
【问题描述】:
我对命名空间失去了理智。在关注了大多数关于如何使用的帖子之后,我终生无法弄清楚如何使用 SelectNodes。
我的 xml:
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Fragment>
<ComponentGroup Id="ProgramFiles">
<Component ..../>
<Component ..../>
<Component ..../>
我尝试过的:
xnManager = new XmlNamespaceManager(doc.NameTable);
xnManager.AddNamespace("wx", "http://schemas.microsoft.com/wix/2006/wi");
//XmlNodeList aNodes = doc.SelectNodes("//wx:Wix/wx:Fragment/wx:ComponentGroup/Component", xnManager);
//var aNodes = doc.GetElementsByTagName("wx:Wix/Fragment/ComponentGroup/Component");
//System.Xml.XmlNodeList aNodes = doc.SelectNodes("//*[local-name()=\"Component\"]");
我错过了什么?所有结果返回 0 个元素。文档有效并加载到文档中。
【问题讨论】:
-
请提供一个可重现的最小示例。
标签: xml namespaces xmldocument xmlnode selectnodes