我一直在为ASP.NET MVC寻找良好的依赖注入.
最近我是 Java EE程序员,我一直使用Spring for DI框架.
但是从互联网搜索了一些教程之后. Spring.NET需要对需要注入的每个控制器进行显式的XML配置.
最近我是 Java EE程序员,我一直使用Spring for DI框架.
但是从互联网搜索了一些教程之后. Spring.NET需要对需要注入的每个控制器进行显式的XML配置.
<spring> <context> <resource uri="config://spring/objects"/> </context> <objects xmlns="http://www.springframework.net"> <object id="HomeController" type="SpringTestApplication.Controllers.HomeController,SpringTestApplication" singleton="false"> <property name="TestProperty" value="This has been injected via Spring.Net"/> </object> </objects> </spring>
而且我认为它非常受人尊敬,因为在Java World中没有像Spring这样的自动装配功能.
你能建议我推荐DI框架的ASP.NET MVC吗?
提前致谢.
解决方法
我不会说ASP.NET MVC框架有一个事实上推荐的DI框架.然而,.NET世界中有不少流行的DI框架:
Castle Windsor,Autofac,StructureMap,Ninject,Unity,Sprint.NET等.
我肯定会推荐Ninject.源代码可以在github找到.对于各种版本的ASP.NET MVC框架,有一个Ninject extension.该项目还包含一个示例应用程序.
如果您想在野外使用Ninject查看应用程序,我会推荐博客引擎Subtext.
我还建议你看看马克·塞曼的书:Dependency Injection in .NET.它涵盖了.NET的一些主要框架.不幸的是,它不涵盖Ninject.