-1

NhibernateProfilerを使用して、すべてのhttpリクエストに対してISessionを作成していることを確認しました。ただし、ISessionは決して閉じません。localSession.Close()が発生するログを確認できます。設定ファイルに、セッションが閉じられない原因となるものがありますか?localSession.Close()がセッションを物理的に閉じない他の理由はありますか?NHibernateの2.1を使用しています。

<?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>

これをお読みいただきありがとうございます。

4

1 に答える 1

0

ISessionを破棄していますか? using ステートメントでラップしますか?

于 2009-12-02T20:44:26.613 に答える