我正在阅读Nhibernate异常会导致无效的会话状态。所以,我的问题是我应该处理哪些异常并关闭并重新打开会话。而且,我应该重新加载所有实体吗?
我的场景 - 我正在我的演示者类中为表单打开一个会话。而且,我正在使用像
这样的交易
using (ITransaction transaction = session.BeginTransaction())
{
foreach (var item in records)
{
session.Delete(item);
}
transaction.Commit();
}
so, should I do this?
using (ITransaction transaction = session.BeginTransaction())
{
foreach (var item in records)
{
session.Delete(item);
}
try
{
transaction.Commit();
}
catch(Exception ex)
{
rollback,
session.dispose
session = factor.opensession()
}
}