【发布时间】:2017-12-21 20:04:14
【问题描述】:
我想使用 XPath 选择 cat 的内部文本为 'PG' 的节点
<?xml version="1.0" encoding="utf-8"?>
<Students>
<student>
<name>Talha</name>
<cat>PG</cat>
</student>
<student>
<name>irfan</name>
<cat>UG</cat>
</student>
<student>
<name>Ali</name>
<cat>PG</cat>
</student>
<student>
<name>Umer</name>
<cat>UG</cat>
</student>
</Students>
我试过的代码是这样的
XmlElement xmldoc = (XmlElement)doc.DocumentElement
.SelectSingleNode("/Students/student/*[*[local-name()='cat']='PG']");
【问题讨论】:
-
local-name()电话是怎么回事?那是可疑的。除非您的实际 XML 具有名称空间,否则您不需要它,并且 即便如此您也并不真正需要它。那么...您的实际 XML 是否有命名空间?如果是,请显示您的实际 XML。如果没有,请摆脱local-name()。