我想,我必须首先设置我想探索子树的起点,然后建立一个递归调用。
示例:
<realRoot>
<node>
<desiredRoot>
<rootChild/>
<nestedChild/>
<rootChild/>
</desiredRoot>
</node>
</realRoot>
我的目标是只迭代:
<desiredRoot>
<rootChild/>
<nestedChild/>
<rootChild/>
</desiredRoot>
C#中最好的解决方案是什么?
答案 0 :(得分:0)
如果我理解正确:一个简单的例子显示元素的名称和类型:
var xmlstr = @"<realRoot>
<node>
<desiredRoot>
<rootChild/>
<nestedChild/>
<rootChild/>
</desiredRoot>
</node>
</realRoot>";
var xd = XDocument.Parse(xmlstr);
var el = xd.Root.Element("node").Descendants();
foreach (var x in el)
Console.WriteLine("{0} [{1}]", x.Name, x.NodeType);
打印:
desiredRoot [Element]
rootChild [Element]
nestedChild [Element]
rootChild [Element]