Я использую Spring .Net и Fluent NHibernate в своем оконном приложении, и я работаю с несколькими потоками. Я читал в некоторых блогах и вопросов, которые могут быть только один сеанс для каждого потока, и я использую HibernateDaoSupport и CurrentSession сделать это:Spring.Net/NHibernate - Multi Threading
public class DaoBase<T> : HibernateDaoSupport, IDaoBase<T>
{
protected ISession CurrentSession
{
get { return SessionFactoryUtils.GetSession(HibernateTemplate.SessionFactory, true); }
}
}
Однако я тестирую эту функцию и должны показать, что сеансы каждого потока - это разные сеансы. Как я могу это сделать?
Обследование: После некоторых исследований я обнаружил, что объекты, полученные с помощью сеанса nhibernate, не могут быть изменены в другом сеансе, например, не могут найти объект в «сеансе 1» и дать обновление на том же объекте в «Сессия 2». Но в моих тестах я получаю объект с первым потоком и обновляю его во втором потоке, это работает. Что случилось?