0
當使用任務的CurrentSessionContext時,應該使用什麼上下文?什麼CurrentSessionContext用於任務
我一直在使用ThreadStatic上下文,我偶爾會從NHProf獲取有關多個線程中使用的同一個會話的警告。
當使用任務的CurrentSessionContext時,應該使用什麼上下文?什麼CurrentSessionContext用於任務
我一直在使用ThreadStatic上下文,我偶爾會從NHProf獲取有關多個線程中使用的同一個會話的警告。
如果你正在使用ThreadStatic,它應該沒問題。如果使用得當,這應該爲每個線程使用不同的會話。我通常使用類似下面的內容來使用會話上下文:
// Open a session if there is not one opened yet.
if (!CurrentSessionContext.HasBind(sessionFactory))
{
CurrentSessionContext.Bind(sessionFactory.OpenSession());
}
var currentSession = sessionFactory.GetCurrentSession();