我如何使用LINQ to XML从示例XML中获取值

时间:2010-01-06 18:02:08

标签: c# xml linq

以下是我尝试访问的xml:

<resourceStrings>    
    <globalStrings>
          <string>
             <key>RptTitle1</key>
             <value>Title1</value>
           </string>    
           <string>
              <key>RptTitle2</key>
              <value>ReportTitle2</value>
           </string>
            <string>
                <key>RptTitle3</key>
                <value>ReportTitle3</value>
            </string>
       </globalStrings>
</resourceStrings>

如何使用linq to xml搜索RptTitle1的键并返回值节点的值?

1 个答案:

答案 0 :(得分:4)

像这样:

var doc = XDocument.Load(...);

var setting = doc.Descendants("string").First(e => e.Element("key").Value == "RptTitle1");
var RptTitle1 = setting.Element("value").Value;

此代码将找到第一个<string>元素,其<key>元素的值等于RptTitle1,然后获取该元素的<value>元素。