当前位置: 代码迷 >> ASP.NET >> xpath 语法!
  详细解决方案

xpath 语法!

热度:5490   发布时间:2013-02-26 00:00:00.0
求一个 xpath 语法!!!!
<root>
    <room   id= "0 ">
          <say   id= "5 ">
                <test> aaa <test>
          </say>
          <say   id= "6 ">
                <test> bbb <test>
          </say>
          <say   id= "7 ">
                <test> bbb <test>
          </say>
              ......
    </room>
  <room   id= "1 ">
   
    </room>
</root>

返回所有room节点id属性等于0   的里面的say子节点id属性大于5的   并且test值等于666的所有say节点

回答正确立刻给分

------解决方案--------------------------------------------------------
string str = @ " <root> <room id= " "0 " "> <say id= " "5 " "> <test> aaa </test> </say> <say id= " "6 " "> <test> 666 </test> </say> <say id= " "7 " "> <test> 666 </test> </say> </room> <room id= " "1 " "> </room> </root> "; XmlDocument dom = new XmlDocument(); dom.LoadXml(str); XmlNodeList nl = dom.SelectNodes( "//room[@id= '0 ']/say[@id> '5 '][./test[.= '666 ']] "); for (int i = 0; i < nl.Count; i++) { Response.Write(nl[i].Name + ", "+ nl[i].Attributes[ "id "].Value+ " <BR> "); }