【问题标题】:Filter child collection using a child collection of the child使用子集合的子集合过滤子集合
【发布时间】:2009-02-14 01:06:33
【问题描述】:

呃,我想不出更好的标题。基本上我有一个名为 MarketGroups 的类,它有一个子集合 Markgroups,它有一个 MarketTypes 的集合,而 MarketTypes 有一个 MetaGroups 的集合。

我希望能够在一个查询中加载父级,并仅返回具有 MarketTypes 且其 MetaGroup 集合中有一个特定 MetaGroup 的子级 MarketGroup。

我知道这个问题:Filter child collection returned with Aggregate Root using Nhibernate不是 我正在寻找的解决方案,我想在理想情况下作为一个查询在代码中执行此操作,但我不介意拆分它。

:)

【问题讨论】:

    标签: c# nhibernate


    【解决方案1】:

    除非您限制默认加载的子项(使用您链接到的方法),否则您必须在一个查询中加载父项,而在另一个查询中加载子项。 AFAIK 无法查询对象并且只加载了某些子对象。

    请注意,您始终可以同时使用 MultiQuery 提交它们。

    HQL 之类的(这可能有点漏掉标记):

                select
                    mt
                from 
                    MarketGroup mg
                inner join
                    mg.MarketTypes mt
                inner join
                    mt.MetaGroups mg
                where 
                   mg.ID=12312 and mg.ID=3214123
    

    【讨论】:

    • 我最终得到了一个 multicritera,所以我将把它作为答案:)
    猜你喜欢
    • 2020-11-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多