Jos*_*osh 8 c# nhibernate asp.net-mvc lazy-loading fluent-nhibernate
我们偶尔会出现这个问题,但现在我每次都可以重现它.我在自定义构建的论坛上递增一个视图计数器,这会导致错误:
NHibernate.LazyInitializationException:懒得初始化集合,没有会话或会话被关闭
此错误发生在对象中的另一个集合上.如果我添加:
.Not.LazyLoad()
对于我的Fluent映射,错误在我的项目周围移动.我一直禁止对对象的延迟加载,直到它没有延迟加载的地方,然后它抛出了这个错误:
NHibernate.LazyInitializationException:无法初始化代理 - 没有会话.
所以,然后我在懒惰的装载上取出了遗嘱,现在我回到原点.当我递增此视图计数器时,它只会出错.这是我的基类保存代码的片段:
using (ISession session = GetSession())
using (ITransaction tx = session.BeginTransaction())
{
session.SaveOrUpdate(entity);
tx.Commit();
}
Run Code Online (Sandbox Code Playgroud)
环顾四周,我在另一篇文章中读到交易可能会导致问题,但那是因为它们被放置在哪里.此代码扩展到与我的域对象(存储库类)分开的类.这是帖子:
hibernate:LazyInitializationException:无法初始化代理
我不相信这是我的问题.这是第一个抛出错误的集合的流畅映射.还有其他几个类似的集合.
HasManyToMany(x => x.Votes)
.WithTableName("PostVotes")
.WithParentKeyColumn("PostId")
.WithChildKeyColumn("VoteId");
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
16227 次 |
| 最近记录: |