1

Application_EndRequestでObjectFactory.ReleaseAndDisposeAllHttpScopedObjects()を呼び出していますが、期待通りに起動していますが、コンテナ内のHttp-ScopedインスタンスがDisposeされていません。 Application_EndRequestでWhatDoIHaveを呼び出すと、Disposeを呼びたいHttp-Scopedインスタンスが表示されますが、それは起こりません。どんなアイデアでもないのですか?StructureMap ReleaseAndDisposeAllHttpScopedObjectsはDispose呼び出しを起こさない

私がHttpContext.Current.Items StructureMapを見ると、そこに何も隠されていないと思います。次のように要求をスコープする登録項目の例である:

For<IConnectionProvider>().HybridHttpOrThreadLocalScoped().Use<ConnectionProvider>(); 

IConnectionProviderがIDisposableを継承しています。

答えて

0

これは私のノブでした!スコープがSingletonに設定されている依存関係グラフのオブジェクトを上にして、各リクエストの最後に処理したいオブジェクト(接続プロバイダ)にハングアップさせました。このオブジェクトのスコープをSingletonからTransientに変更すると、すべての作業が開始されました。

関連する問題