首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Nhibernate EagerLoad点播

Nhibernate EagerLoad点播
EN

Stack Overflow用户
提问于 2013-06-19 08:49:05
回答 1查看 137关注 0票数 0

我刚接触过流利的nhibernate,并遇到以下NHibernante错误:

代码语言:javascript
复制
Initializing[Toto.Business.Catalog.Unit#059fb247-df11-4457-8a4d-7c8b984a155e]-failed to lazily initialize a collection of role: Toto.Business.Catalog.Unit.Values, no session or session was closed

当我试图访问item.Product.Product.Unit.Values时。我想用.Not.LazyLoad()来解决这个问题,在我的IAutoMappingOverride之上使用它,但是它阻止了其他我不能触摸的视图。

我尝试了一些事情,比如:

代码语言:javascript
复制
        NHibernateSession.Current.Query<BasketItem>()
                         .Fetch(e => e.Product.Product)
                         .ThenFetchMany(e => e.Unit.Values);

这不会改变任何事情。我试着补充:

代码语言:javascript
复制
   foreach (var item in CurrentUserBasket.Items.Where(item => item.Product != null && item.Product.Product != null && item.Product.Product.Unit != null))
            {               
                NHibernateSession.Current.Load<IList<UnitValue>>(item.Product.Product.Unit.Values);
            }

但我给了我错误:

代码语言:javascript
复制
Unable to locate persister for the entity named 'System.Collections.Generic.IList`1[[Toto.Business.Catalog.UnitValue, Toto.Business, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]]'.

编辑

我想在我的视图中访问item.Product.Product.Unit.Values,我如何做到这一点?

EN

回答 1

Stack Overflow用户

发布于 2013-06-19 09:19:33

我认为这在Query<T> api中是不可能的,我很确定它只允许您获取1的最大深度。

您可以使用QueryOver<T> API来完成这一任务。

与…有关的东西

代码语言:javascript
复制
Product product = null;
Product nestedProduct = null;
Unit unit = null;
Value value = null;

var result = NHibernateSession
    .Current
    .QueryOver<BasketItem>()
    .JoinAlias(x => x.Product, () => product)
    .JoinAlias(x => x.Unit, () => unit)
    .JoinAlias(() => product.Product, () => nestedProduct)
    .JoinAlias(() => unit.Values, () => value)

同样值得记住的是,FluentNHibernate只是nhibernate的一个替代映射,它不会改变您在查询方面使用nhibernate的方式。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17186830

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档