Nhibernate 如何使用即时加载和分离条件获取具有多个初始化集合的对象列表?

Nhibernate 如何使用即时加载和分离条件获取具有多个初始化集合的对象列表?,nhibernate,activerecord,castle-activerecord,Nhibernate,Activerecord,Castle Activerecord,我有一个有两个多对多协会的班级。看完报纸后 AR文档我意识到,我一次只能获得一个集合使用渴望加载。那么,如何使用eager-loading和DetachedCriteria为每个对象获取具有初始化集合的对象列表呢 到目前为止 DetachedCriteria dc = DetachedCriteria.For(); dc.SetResultTransformer(new DistinctRootEntityResultTransformer()); dc.SetFetchMode("Compla

我有一个有两个多对多协会的班级。看完报纸后 AR文档我意识到,我一次只能获得一个集合使用渴望加载。那么,如何使用eager-loading和DetachedCriteria为每个对象获取具有初始化集合的对象列表呢

到目前为止

DetachedCriteria dc = DetachedCriteria.For(); dc.SetResultTransformer(new DistinctRootEntityResultTransformer()); dc.SetFetchMode("ComplaintCause", FetchMode.Eager); dc.SetFetchMode("InsuranceType", FetchMode.Eager); dc.SetFetchMode("Applicants", FetchMode.Eager); // MANY-TO-MANY COLLECTION DetachedCriteria dc=DetachedCriteria.For(); dc.SetResultTransformer(新的distinctrotentyResultTransformer()); dc.SetFetchMode(“ComplaintCause”,FetchMode.Eager); dc.SetFetchMode(“保险类型”,FetchMode.Eager); dc.SetFetchMode(“申请人”,FetchMode.Eager);//多对多集合 现在我想买另一个系列:

dc.SetFetchMode("Insurers", FetchMode.Eager); // THE ADDITIONAL COLLECTION TO EAGER LOAD dc.SetFetchMode(“保险公司”,FetchMode.Eager);//要加载的附加集合 这给了我一个奇怪的笛卡尔积


如何使用多重查询或多重标准来获得两个初始化集合的结果

请参阅以获取参考,它解释了解决此问题的MultiQuery和MultiCriteria。

关于急切加载特定根实体的文章中描述的解决方案,我的问题是我想急切加载一组根实体。如果我要使用MultiCritera,我需要找到一种方法来连接所有不同的查询,而无需指定特定的实体。如何提出建议?