Session 会话结束后,Fluent Nhibernate与实体一起工作

Session 会话结束后,Fluent Nhibernate与实体一起工作,session,memory-leaks,fluent-nhibernate,dispose,Session,Memory Leaks,Fluent Nhibernate,Dispose,我有一个关于如何处理从db收到的实体的问题。 目前我有很多操作,我需要从数据库中获取实体,并将它们传递给另一个服务。此类代码的简化版本如下所示: List<Entity> list; using(var session = SessionFactory.OpenSession()) { list = Session.QueryOver<Entity>.Future().ToList(); } 列表; 使用(var session=SessionFactory.O

我有一个关于如何处理从db收到的实体的问题。 目前我有很多操作,我需要从数据库中获取实体,并将它们传递给另一个服务。此类代码的简化版本如下所示:

List<Entity> list;
using(var session = SessionFactory.OpenSession())
{
    list = Session.QueryOver<Entity>.Future().ToList();
}
列表;
使用(var session=SessionFactory.OpenSession())
{
list=Session.QueryOver.Future().ToList();
}
所以现在我不知道,若对象列表长时间不被处理,会不会导致内存学习与存储的会话一致。nhibernate会话是否存在,而会话期间接收的对象是否存在

更新


找到一些会话设置session.ActiveEntityMode-POCO,它解决了我的问题吗?

一旦使用结束,会话就会被释放。除未初始化的lazyloaded集合/引用/属性外,加载的所有实体仍然有效


还有
Session.QueryOver.Future().ToList()中的Future
是一个noop,在此之前没有其他操作对其具有未来/未来价值。

谢谢,已经进行了一些高负载测试,以证明会话上的POCO模式。