我有具有下一个结构的 XmlDocument 对象:
<ROOT>
<MESSAGE>
<some_fields />
<myDate>
<myParameter>
</MESSAGE>
<MESSAGE>
...
</ROOT>
我想获取 myDate>= 给定日期和 myParameter=given 参数的所有 MESSAGE 节点。即类似的东西:
MyDoc.SelectNodes("/ROOT/MESSAGE..")
是否可以使用 XPath 来做到这一点?
==================
好的。myDate 已经输入了 xs:dateTime。但现在我有下一个例外:
//MESSAGE[myDate < xs:dateTime(2012-06-22T11:17:44)]' 具有无效的限定名称。
代码是:
XmlNodeList nodeList = MyXmlDocument.SelectNodes("//MESSAGE[myDate < xs:dateTime(" + givenDateTime + ")]");
即使使用它也不起作用
"//MESSAGE[xs:dateTime('2012-06-22T11:47:32')=xs:dateTime('2012-06-22T11:47:32')]"
然后我有 System.Xml.XPath.XPathException:
需要命名空间管理器或 XsltContext。此查询具有前缀、变量或用户定义的函数。