2012-05-03 52 views
1

我有一個Entity,它擁有OtherEntity集合的多對多風格關係。此屬性的映射是這樣的:在單個查詢中檢索`HasMany`實體 - 流利-NHibernate

HasManyToMany(x => x.OtherEntity) 
       .AsBag() 
       .Table("EntityToOtherEntityMapping") 
       .ParentKeyColumn("EntityId") 
       .ChildKeyColumn("OtherEntityId") 
       .Not.LazyLoad() 
       .Cascade.None(); 

我注意到,檢索Entity的集合,當有對的OtherEntity每個集合一個單獨的SQL查詢。

我該如何讓Fluent-NHibernate在一個查詢中執行這個檢索而不是n?

回答

0

答案竟然是在設置FetchModel躍躍欲試,並選擇使用ResultTransformer:

.SetFetchMode("Tags", FetchMode.Eager) 
.SetResultTransformer(Transformers.DistinctRootEntity) 
2

在您的財產上添加fetch連接。

.Fetch.Join();