Сессия Nhibernate и ASP.NET - PullRequest
       16

Сессия Nhibernate и ASP.NET

0 голосов
/ 02 декабря 2009

Используя NhibernateProfiler, мы определили, что создаем ISession для каждого http-запроса. Однако сессии никогда не закрываются. Мы можем видеть в журнале, где срабатывает localSession.Close (). Есть ли в нашем конфигурационном файле что-то, что могло бы никогда не закрыть сеанс? Существуют ли другие причины, по которым localSession.Close () не может физически закрыть сеанс? Мы находимся на 2.1 NHibernate.

<?xml version="1.0" encoding="utf-8" ?>
<hibernate-configuration xmlns="urn:nhibernate-configuration-2.2">
  <session-factory>
    <property name="connection.provider">JCDCHelper.DAL.Utilities.JCDCConnectionProvider, JCDCHelper.DAL</property>
    <property name="dialect">NHibernate.Dialect.Sybase</property>
    <property name="connection.release_mode">on_close</property>
    <property name="show_sql">true</property>
    <property name="connection.driver_class">JCDCHelper.DAL.Utilities.DataDirectSybaseDriver, JCDCHelper.DAL</property>
    <property name="proxyfactory.factory_class">NHibernate.ByteCode.Castle.ProxyFactoryFactory, NHibernate.ByteCode.Castle</property>
    <property name="connection.connection_string_name">ProdSybase</property>
    <property name="current_session_context_class">web</property>
    </session-factory>
  </hibernate-configuration>

Спасибо, что нашли время, чтобы прочитать это.

1 Ответ

0 голосов
/ 02 декабря 2009

Вы избавляетесь от ISession? Завернуть его в оператор использования?

...