0
我正在開發一個使用ASP.NET MVC的Web應用程序,並將Windsor Castle作爲IoC容器(包括WindsorControllerFactory
和我的內部組件)。目前我創建和存儲這樣的容器到Application
(HttpApplicationState
):在網絡農場上使用Windsor容器
protected void Application_Start()
{
...
IWindsorContainer windsorContainer = new WindsorContainer();
Application["WindsorContainer"] = windsorContainer;
...
}
protected void Application_End()
{
IWindsorContainer container = (IWindsorContainer)Application["WindsorContainer"];
container.Dispose();
Application["WindsorContainer"] = null;
}
這對於將在Web場運行的應用程序適當的解決辦法?我需要注意哪些問題?有沒有更好的地方放置容器?
我知道Application
狀態不是在Web場中的服務器之間共享,但我認爲只要存儲在Application
狀態中的數據不是特定於請求的數據,這應該不會成爲問題?
橫切關注點的容器可以解決不是由耦合與靜態引用代碼更優雅,但無論如何 - 這並不真的有很多事要做我問了什麼。即使您使用靜態網關,它也不會跨請求保留。 – 2009-06-10 05:29:37