Consider the following XML:
<response>
<status_code>200</status_code>
<status_txt>OK</status_txt>
<data>
<url>http://bit.ly/b47LVi</url>
<hash>b47LVi</hash>
<global_hash>9EJa3m</global_hash>
<long_url>http://www.tumblr.com/docs/en/api#api_write</long_url>
<new_hash>0</new_hash>
</data>
</response>
我正在寻找一种非常简短的方法来获取<hash>
元素的值。 我尝试过:
var hash = xml.Element("hash").Value;
但是那样并不起作用。是否可能向XElement
提供XPath查询?使用旧的System.Xml
框架,我可以这样做:
xml.Node("/response/data/hash").Value
在LINQ命名空间中有类似这样的东西吗?
更新:
在更多的尝试后,我找到了一种方法来实现我想要做的事情:
var hash = xml.Descendants("hash").FirstOrDefault().Value;
我仍然很想看看是否有更好的解决方案?