代码之家  ›  专栏  ›  技术社区  ›  Chris Canal

使用子集合的子集合筛选子集合

  •  1
  • Chris Canal  · 技术社区  · 15 年前

    嗯,我想不出更好的头衔。基本上我有一个名为marketgroups的类,它有一个子集合markgroups,它有一个marketype集合,markettypes有一个metagroups集合。

    我希望能够在一个查询中加载父级市场组,并且只返回在其元组集合中具有一个特定元组的市场类型的子市场组。

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

    :)

    1 回复  |  直到 15 年前
        1
  •  0
  •   Dan Fish    15 年前

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

    您可以同时使用多查询提交它们。

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

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