0
我有一个Nhibernate类库和一个引用它的Web应用程序。我可以得到的数据形成的产品表,这很好,但是当我刷新它,我收到低于这个issue.Please看到图像:使用Nhibernate时的WebDev问题
http://vi-vn.com/pubs/images/NhibernateWeb.jpg
(死链接)
是否有办法来纠正他的问题?
我有一个Nhibernate类库和一个引用它的Web应用程序。我可以得到的数据形成的产品表,这很好,但是当我刷新它,我收到低于这个issue.Please看到图像:使用Nhibernate时的WebDev问题
http://vi-vn.com/pubs/images/NhibernateWeb.jpg
(死链接)
是否有办法来纠正他的问题?
您已链接的错误消息图像向我表明您可能试图访问会话后,它已被关闭。尝试访问延迟加载的集合/引用时,通常会发生这种情况。例如:
class MyObject
{
public virtual IList<MyOtherObject> MyObjects { get; set; }
}
MyObject obj = session.Load<MyObject>(1);
// Some stuff happens, the session is explicitly closed or goes out of scope
// Later, obj is still tied to the (now closed) session but code tries to:
int count = obj.MyObjects.Count; // MyObjects is lazy-loaded, NHibernate tries to query
NHibernate的看到了MyObjects收集延迟加载和尚未初始化,所以它会试图通过其关联的会话来查询集合。但是,该会话已经关闭,所以它会抛出ObjectDisposedException
并说“会话已关闭!”
解决方案是预加载您的集合或确保会话不会超出范围,或者在您完成之前明确处理会话。
应该如何知道问题是什么?您应该调试您的服务器并提供发生的异常和生成它的代码。 – 2009-06-09 09:55:20
http://vi-vn.com/pubs/images/SessionClose.jpg 是的。我使用NHibernate-2.1.0.Alpha2-bin – QuachNguyen 2009-06-09 11:08:25