XML Descendants v / s Child Node

时间:2012-03-06 19:33:27

标签: xml linq-to-xml

我有这个XML

<globalSettings>
<a>V1</a>
<b>V2</b>
<test>TestValueGlobal</test>
</global>
<block name="one">
<name>V2</name>
<test>TestValueOfBlock1</test>
</block>
</globalSettings>

doc = XDocument.Parse(xml);

我想从<test>获取<globalSettings>的值,但<test>并不总是存在。现在,我有 doc.Descendants("test").FirstOrDefault()但它可以从<test>

中获得<block name="one">的值

我该如何解决这个问题?

谢谢! RS

1 个答案:

答案 0 :(得分:0)

尝试

doc.XPathEvaluate("string(/globalSettings/test)");

如果<test>不存在,它应该返回<test>的值或空字符串。