To był problem, który istniał w przypadku 3 projektów dla mnie.Nie można ustawić domyślnego poziomu izolacji Nhibernate (np. Poprzez mapowanie).
Próbowałem następujące:
<property name="connection.isolation">ReadCommitted</property>
Położony w hibernate.cfg.xml
Korzystanie biegle nhiberate:
MsSqlConfiguration.MsSql2008.IsolationLevel(IsolationLevel.ReadCommitted);
Położony w Global.asax.cs
Zawsze byłem zmuszony ustawić tak:
CurrentNhibernateSession.Transaction.Begin(IsolationLevel.ReadCommitted);
który działa. (Widzę to za pomocą NHibernate Profiler)
Problem polega na tym, że używam ostrej architektury i transaction.begin jest wywoływana wewnątrz tej struktury i mam problemy z jej odbudową.
Czy istnieje sposób na wykonanie tej czynności bez jawnego ustawienia jej podczas rozpoczynania transakcji?
Niesamowita odpowiedź! Dziękuję Ci! – Alistair
@Alistair: Wspomniałem o tym także w grupie nhprof, ale domyślam się, że nic nie można/zostanie to zrobione dla użytkowników NH 2.x w każdym razie ... http://groups.google.com/group/nhprof/browse_thread/thread/b8ceb8f8c1cdb4d3 – DanP