我知道当涉及到 .NET(或者至少是我正在使用的 .NET 版本)时,如果我想从具有非默认命名空间的 XML 文档中查询数据,我至少有两个选择:
1. use the local-name() function before referencing a
node in the xpath expression.
2. work with the XmlNamespaceManager class and assign prefixes
that then need to be referenced in the xpath expression.
最近我一直在使用 XSLCompiledTransform 类,并且在从具有非默认命名空间的 XML 文件中读取数据时遇到了类似的问题。
由于将编写实际 XSL 文件的人可能不知道他们需要使用 local-name() 函数,并且无法控制他们将使用的 XML 文件,所以我可以按代码顺序做些什么忍受 XSLCompiledTransform 类正确解释 (/node0/node1/node2/etc) 形式的 xpath 表达式?