【问题标题】:ASP.NET MVC2 IoC: Looking for an example using CastleWindsor container that works with minimum configASP.NET MVC2 IoC:寻找一个使用 CastleWindsor 容器的示例,该容器使用最低配置
【发布时间】:2010-08-20 22:06:55
【问题描述】:

我正在寻找如何配置 ASP.NET MVC2 项目以使用 CastleWindsor 容器进行 IoC 的示例。

我一直在设置它时遇到问题,对于每个问题,似乎都有一个在线解决方案,但最后我做了很多更改,最终得到了如此冗长的设置,让 IoC 使用 CastleWindsor 工作,我认为最好问这个问题。

我正在寻找 Global.asax 页面、Web.config 中所需的最低配置,如果需要,还需要哪些其他更改和扩展类。

我不打算在这个阶段注入动作过滤器,所以只是基础知识。最好不要使用 XML 文件,而是在 .NET 中以编程方式进行。

提前谢谢你...

【问题讨论】:

    标签: asp.net-mvc-2 castle-windsor ioc-container


    【解决方案1】:

    这是最基本的:

    1. 从 VS2010 开始一个 MVC2 项目
    2. Download MvcContrib 用于 MVC2(表示“额外二进制文件”的那个)
    3. 在您的项目中,添加对(所有这些 DLL 都包含在 MvcContrib 中)的引用:

      • Castle.Core.dll
      • Castle.DynamicProxy2.dll
      • Castle.MicroKernel.dll
      • Castle.Windsor.dll
      • MvcContrib.dll
      • MvcContrib.Castle.dll
    4. 在您的 Application_Start() 中,添加这些行(以及所需的任何命名空间):

      var container = new WindsorContainer();
      container.RegisterControllers(typeof(HomeController).Assembly);
      ControllerBuilder.Current.SetControllerFactory(new WindsorControllerFactory(container));
      

    【讨论】:

    • 我应该注意到,当前 MvcContrib 包括 Windsor 2.0,而 Windsor 的最新版本是 2.5
    • 另外,MvcContrib 放弃了对 MVC3 的 IoC 容器的支持
    猜你喜欢
    • 2011-02-09
    • 1970-01-01
    • 2016-08-14
    • 2013-08-26
    • 1970-01-01
    • 1970-01-01
    • 2011-10-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多