呃,我想不出更好的头衔。基本上我有一个名为MarketGroups的类,它有一个子集合Markgroups,它有一个MarketTypes集合,而MarketTypes有一个MetaGroup集合。
我希望能够在一个查询中加载Parent,并且只返回在其MetaGroup集合中具有一个特定MetaGroup的MarketTypes的Child MarketGroup。
我知道这个问题:Filter child collection returned with Aggregate Root using Nhibernate但不我正在寻找的解决方案,我想在代码中理想地将其作为一个查询执行,但我不会介意分裂它。
:)
答案 0 :(得分:0)
除非您限制默认加载的子项(使用您链接到的方法),否则您必须在一个查询中加载Parent,在另一个查询中加载子项。 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