5

StructureMap で、特定のコンテナ インスタンスですべての Http スコープ オブジェクトを解放および破棄するにはどうすればよいですか? Object Factory のデフォルトのインスタンスでは、メソッドを実行できますReleaseAndDisposeAllHttpScopedObjects()が、Container クラスと IContainer インターフェイスにはそのようなメソッドがないようです。

4

1 に答える 1

6

の内部を見ると、次のObjectFactory.ReleaseAndDisposeAllHttpScopedObjectsように実装された便利なメソッドであることがわかります。

public static void ReleaseAndDisposeAllHttpScopedObjects()
{
    HttpContextLifecycle.DisposeAndClearAll();
}

すなわち。HttpContextLifecycle.DisposeAndClearAllオブジェクトをクリアするメソッドを呼び出すことができます。

編集: HttpContextLifecycle はコンテナーごとではなくグローバルであるため、ネストされたコンテナーのアプローチは、Http 要求中にオブジェクトの有効期間をより細かく制御するためのソリューションになると思います。

于 2013-04-05T20:22:33.250 に答える