0
如何使用Criteria API加載子元素和子集合。我已經閱讀了幾乎所有可以在google上找到的鏈接,但子元素不會被加載。NHibernate使用Criteria API加載子元素/集合
這裏是我的設置
訂單具有的OrderItems和在指定我的DTO的
在流利的映射功能的訂單,我有這些顯着的線:
LazyLoad();
this.HasMany<OrderItems>(x => x.OrderItems).KeyColumns.Add(new[] { "OrderId"});
在我存儲庫類,我創建從我的標準類查詢和檢索列表:
DetachedCriteria query = criteria.CreateCriteria();
IList<Orders> myOrders =
query.GetExecutableCriteria(UnitOfWork.CurrentSession).List<Orders>();
當我嘗試訪問myOrders.OrderItems時,它們是空的(它們確實在我的數據庫中)。我以爲在映射功能將使這個LazyLoad()調用...
於是,我就渴望負載是這樣的:
query.SetFetchMode("Orders.OrderItems", NHibernate.FetchMode.Eager)
BU這也不行。
我哪裏錯了?
感謝您的答覆。當我有機會測試時,我會發布結果。 – getit