3

ISession の有効期間を「HTTP リクエストごと」 (使用している Autofac の InstancePerLifetimeScope) に設定すると、NHibernate プロファイラーはセッションがスレッド間で使用されていることを通知します。これはおそらくバグです。何が起こっている?作業単位を http リクエストにスコープする必要があると考えるのに慣れていますが、実際にはセッションが複数のスレッドで使用されているようです。

基本的に、この「HTTP リクエストごとの ISession」は、NHibernate プロファイラーのアラートと競合します。どこが間違っていますか?

更新: Web.config に ContainerDisposalModule があるため、破棄は正常に機能します。

4

1 に答える 1

1

IIS(ほとんどのWebサーバーと同様)は複数のスレッドを使用して要求を処理するため、これはおそらくアプリケーションのバグではなく、警告を無視しても問題ありません。

この質問も参照してください。

于 2010-11-01T13:34:39.097 に答える