C# 获取特定的xelement子值

C# 获取特定的xelement子值,c#,.net,xml,xpath,C#,.net,Xml,Xpath,如何实现这一点?您可以使用: 与: 与: 请记住,您还需要System.Xml.XPath名称空间。我有:XDocument xdoc=XDocument.Load(reader);和reader=XmlReader.Create(Url);reader.MoveToContent();然后使用第一个例子。它适用于System.Xml.Linqnamespace对于第二个示例,xdoc应该是一个XmlNode,而不是一个XDocument?但是在我的场景中:xdoc是一个XDocument,而不

如何实现这一点?

您可以使用:

与:

与:


请记住,您还需要
System.Xml.XPath
名称空间。

我有:XDocument xdoc=XDocument.Load(reader);和reader=XmlReader.Create(Url);reader.MoveToContent();然后使用第一个例子。它适用于
System.Xml.Linq
namespace对于第二个示例,xdoc应该是一个XmlNode,而不是一个XDocument?但是在我的场景中:xdoc是一个XDocument,而不是一个XmlNode我添加了以下内容:使用System.Xml.XPath;现在它起作用了
<information items ="2">
    <table id="31"> </table>
    <profile code="5">
        <name language="ro"> Spania </name>
        <name language="gb"> Spain </name>
        <name language="pl"> Hiszpania </name>
    </profile>
</information>
string country = xdoc.Descendants("information").Elements("profile").Elements("name")./*???Value???*?
string country = xdoc.XPathSelectElement("/information/profile/name[@language='gb']").Value;
string country = xdoc.SelectSingleNode("/information/profile/name[@language='gb']").InnerText;