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