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