我有一个Entity
,它以多对多的样式关系保存OtherEntity
的集合。此属性的映射如下所示:
HasManyToMany(x => x.OtherEntity)
.AsBag()
.Table("EntityToOtherEntityMapping")
.ParentKeyColumn("EntityId")
.ChildKeyColumn("OtherEntityId")
.Not.LazyLoad()
.Cascade.None();
我注意到在检索Entity
的集合时,每个OtherEntity
集合都有一个单独的SQL查询。
如何让Fluent-NHibernate在一个查询中执行此检索而不是n?
答案 0 :(得分:2)
在您的媒体资源上添加抓取加入。
.Fetch.Join();
答案 1 :(得分:0)
答案结果是将FetchModel设置为Eager并选择ResultTransformer:
.SetFetchMode("Tags", FetchMode.Eager)
.SetResultTransformer(Transformers.DistinctRootEntity)