我有一个XDocument对象。我想使用LINQ在任何深度查询具有特定名称的元素。使用时Descendants("element_name"),我只会得到当前级别的直接子级元素。我要寻找的是XPath中的“ // element_name”等价...我应该只使用XPath,还是可以使用LINQ方法来实现?谢谢。
3 回答
犯罪嫌疑人X
TA贡献2080条经验 获得超4个赞
后代应该工作得很好。这是一个例子:
using System;
using System.Xml.Linq;
class Test
{
static void Main()
{
string xml = @"
<root>
<child id='1'/>
<child id='2'>
<grandchild id='3' />
<grandchild id='4' />
</child>
</root>";
XDocument doc = XDocument.Parse(xml);
foreach (XElement element in doc.Descendants("grandchild"))
{
Console.WriteLine(element);
}
}
}
结果:
<grandchild id="3" />
<grandchild id="4" />
- 3 回答
- 0 关注
- 719 浏览
添加回答
举报
0/150
提交
取消