ASP.NET MVC3プロジェクトで(Fluent)NHibernateを使用しています。カスタムHttpModuleを実装することにより、リクエストごとに1つのNHibernateセッションを開くという標準的なアプローチを使用しています。セッションはBeginRequestで開かれ、EndRequestで閉じられます。
Pre / Post Insert / Updateイベントにフックして、エンティティの履歴ログを書き込みます。これらのイベントハンドラーにエンティティを保存しようとすると、問題が発生します。これらのイベントハンドラーの前にEndRequestがすでに呼び出されているように見えるため、NHibernateセッションはすでに閉じられています。
履歴エンティティを保存できるように、セッションの終了を遅らせるにはどうすればよいですか?rhino commonsでいくつかのHttpModuleを調べましたが、私の状況ではやり過ぎのようです。