代码之家  ›  专栏  ›  技术社区  ›  gsharp

LINQ到XML查询

  •  1
  • gsharp  · 技术社区  · 15 年前

    我有这样的XML结构:

    <Items>
        <Configuration>
            <ConfigurationSetting>Setting1</ConfigurationSetting>
            <ConfigurationSetting>Setting2</ConfigurationSetting>
        </Configuration>
        <MetaData>
        ...
        </MetaData>
        <Group>
            <GroupType>MyType1</GroupType>
            <GroupType>MyType2</GroupType>
        </Group>
        <Group>  <--- Looking for this Element
            <Reference>MyReference1</Reference>
            <Reference>MyReference2</Reference>
        </Group>
        <Group>
            <GroupType>MyType3</GroupType>
            <GroupType>MyType4</GroupType>
        </Group>
    </Items>
    

    我想写一个LINQ查询,它返回第一个 “群” 包含子元素的元素 “参考” .

    谢谢你的帮助。

    1 回复  |  直到 15 年前
        1
  •  8
  •   Marc Gravell    15 年前

    类似:

            var grp = doc.Root.Elements("Group")
                .Where(g  => g.Elements("Reference").Any())
                .FirstOrDefault();
    

    或者作为xpath(可能在 XmlDocument ): @"/Items/Group[Reference]"