关于SelectSigleNode和SelectNodes

System.Xml.XmlDocument类有SelectSigleNode和SelectNodes两个函数,给它们一个xpath参数就可以进行节点选取。因为它用的是xpath做参数,因而特别好用,但是最近发现这两个函数是有局限的:并不能解析所有的xpath。今天试了两个就不行。
1. xpath = "/books/book[not(@b = @a * 2)]/self::*[1]/@b + /books/mybook/as[text()]";  // 不知道这个xpath写得对不对
2. xpath = "sum(/books/book/@a)";

我的测试xml如下:

<?xml version="1.0" encoding="GB2312" ?>
<books>
 <book a="3" b="6"></book>
 <book a="3" b="5"></book>
 <book a="4" b="8"></book>
 <mybook>
  <as>1</as>
 </mybook>
</books>


 

你可能感兴趣的:(select)