如何通过LINQ获得第一级孩子

时间:2010-06-22 08:48:30

标签: asp.net xml linq

我有这样的XMl

<root>
    <list>
        <list>
            <topic></topic>
            <topic></topic>
        </list>
        <topic></topic>
        <topic></topic>
    </list>
    <topic></topic>
    <topic></topic>
    <topic></topic>
</root>

我需要得到第一级孩子:

<list></list>
<topic></topic>
<topic></topic>
<topic></topic>

我尝试这样做

var list = x.Descendants().Where(e => e.Name == "list" || e.Name == "topic");

但它会返回所有主题和列表。

请帮忙! :)

1 个答案:

答案 0 :(得分:39)

只需document.Root.Elements()即可。

基本上Descendants()递归,而Elements()只能直接孩子。