私はDI用にNinjectとMVC4アプリ内のNinject.MVC3拡張機能、具体的にはバージョン3.0.0.6を使用しています。
Ninject の wikiのドキュメントを読むと、作成されたオブジェクトの有効期間InRequestScope
は実際には ASP.NET によって制御されており、適切にクリーンアップするにはOnePerRequest
HttpModule を登録する必要があるようです。
しかし、このドコは古いようtype="Ninject.OnePerRequestModule"/>
で見つからない。
一方、私は最近、すでに を扱っていることを示唆していると思われるビットをいくつか読みました。NinjectHttpApplication
OnePerRequest
私の質問は、Ninject.Web.MVC 3.0 が既にこの問題に対処しているのか、それとも HttpModule を「web.config」に手動で追加する必要があるのかということです。
以下を構成に追加しましたが、すべてが機能しているように見えますが、オブジェクトがいつ破棄されるかをテストする方法がまったくわかりません。
<system.web>
<httpModules>
<add name="OnePerRequestModule" type="Ninject.Web.Common.OnePerRequestHttpModule"/>
</httpModules>
...
HttpModuleを手動で追加する必要がありますか、OnePerRequest
それとも Ninject.Web.MVC がこれを処理してくれますか?