在Web场上使用Windsor容器

时间:2009-06-09 07:02:45

标签: asp.net asp.net-mvc castle-windsor

我正在使用ASP.NET MVC开发Web应用程序,我使用Windsor Castle作为IoC容器(WindsorControllerFactory和我的内部组件)。目前我正在创建容器并将其存储到ApplicationHttpApplicationState)中,如下所示:

    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场上运行的应用程序,这是一种正确的方法吗?我需要注意哪些问题?有没有更好的地方放容器?

我知道在Web场中的服务器之间不共享Application状态,但我认为只要存储在Application状态的数据不是这个问题就不会有问题请求的具体情况?

1 个答案:

答案 0 :(得分:0)

我更喜欢将容器存放在static gateway像Ayende的IoC from Rhino Commons

相关问题