XPath获取单个元素
问题描述:
<Materials>
<Material>
<mtlCode>1</mtlCode>
<mtlName>Activa</mtlName>
</Material>
<Material>
<mtlCode>2</mtlCode>
<mtlName>Ancor</mtlName>
</Material>
</Materials
-----------------------------------------
doc.Load(xmlFilePath);
XmlNodeList xmlnode = doc.SelectNodes"/Materials/Material[mtlCode=2]/mtlName");
string stringNode = xmlnode[0].Value;
------------------------------------------
But this code return null always.
How can I get the value (ie. Ancor) as per mtlCode=2;
请提供更正的代码..
Plz provide corrected code..
答
尝试用InnerText替换Value,例如:
Hi,
Try replacing the Value with InnerText, like:
string stringNode = xmlnode[0].InnerText;
您好,
您也可以尝试这样的操作.
字符串stringNode = doc.SelectSingleNode("/Materials/Material [mtlCode = 2]/mtlName").InnerText;
或
字符串stringNode = doc.SelectNodes("/Materials/Material [mtlCode = 2]/mtlName").Item(0).InnerText
Hello,
You also can try something like this.
string stringNode = doc.SelectSingleNode("/Materials/Material[mtlCode=2]/mtlName").InnerText;
OR
string stringNode = doc.SelectNodes("/Materials/Material[mtlCode=2]/mtlName").Item(0).InnerText