ASP.NET MVC 4 アプリケーションで Spring.NET の IOC コンテナーを使用しています。各コントローラーは、コンテナーから EF データ コンテキストを取得しています。
private readonly IDBContext db =
(IDBContext) ApplicationHelper.ApplicationContext.GetObject("DatabaseContext");
私はコントローラーを足場にしました。デフォルトでは、DB接続が破棄されるIDisposableインターフェースを実装しています-次のように:
protected override void Dispose(bool disposing)
{
this.db.Dispose();
base.Dispose(disposing);
}
いいですね~そのままにしておきたいです。ただし、呼び出された 2 番目のコントローラーは例外を発生させ、データベース コンテキストが破棄されたことを示します。
だから - 私がしたいのは、次のコントローラーがGetObject()
メソッドを呼び出すときに、オブジェクトが破棄されたかどうかを IOC コンテナーにチェックさせることです。それは可能ですか、それともデザインを変更する必要がありますか?