Linq 到 Xml 查询

发布于 2024-08-03 16:48:32 字数 901 浏览 2 评论 0原文

我有一个像这样的 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 查询,返回第一个包含子元素 "Reference""Group" 元素。

感谢您的帮助。

I have a xml structure like this:

<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>

I want to write a Linq query that returns the first "Group" Element that contains a Sub-Element "Reference".

Thanks for your help.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

楠木可依 2024-08-10 16:48:32

类似于:

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

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

Something like:

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

Or as xPath (perhaps in XmlDocument): @"/Items/Group[Reference]"

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文