围绕“web”CurrentSessionContext / ISessionFactory.GetCurrentSession的线程安全

时间:2011-01-31 11:37:55

标签: asp.net nhibernate thread-safety

我见过一些代码可以锁定以下代码:

if (!CurrentSessionContext.HasBind(sessionFactory))
{
     CurrentSessionContext.Bind(sessionFactory.OpenSession());
}

ISession session = sessionFactory.GetCurrentSession();

sessionFactory是注入DI的单例,配置使用“web”(不是“managed_web”)上下文。

假设此代码不需要同步访问,我是否正确?

1 个答案:

答案 0 :(得分:4)

这是正确的。

由于Web上下文使用HttpContext.Items,因此您无需手动管理共享状态。