在MVC 3中通过依赖注入学习控制反演

时间:2011-02-04 16:30:47

标签: asp.net-mvc-3 dependency-injection inversion-of-control ninject

有人可以给我一个简单的例子 DI和IoC 吗? 我理解第一个,但无法得到第二个的实现。

我正在使用 MVC 3 ,我真的想使用IDependencyResolver,但我无法理解。

ninject是一个选项还是必需的?

是否有像nerdDinner这样的教程,我无法找到它?

有人可以给我一个研究它的链接吗?

4 个答案:

答案 0 :(得分:9)

为了快速了解真实世界的DI及其模式和反模式,我建议获取DI in .NET。 (我订购它已经编辑了:这是一个页面调整器,教会了我很多,应该教好所有经验水平的人)

如果失败,请阅读所有Mark Seemannhigh-rated posts here

我个人从ninject wiki 中学到了,但是,虽然很好,但是Ninject 1.0具体

答案 1 :(得分:6)

不要使用IDependencyResolver。它与控制反转无关,而且它从根本上被打破了。如果您想了解如何在MVC 3中正确使用IoC Container,请参阅this tutorial(使用Windsor)。

答案 2 :(得分:4)

这不是我的例子,而是我在寻找一个简单的功能性示例时遇到的问题。它使用NInject和.Net MVC 3的最终IoC功能。

http://www.shahnawazk.com/2010/12/dependency-injection-in-aspnet-mvc-3.html

文章底部的简单可下载示例项目。

答案 3 :(得分:0)

我无法回答与asp相关的技术,但在学术方面,你使用DI的事实意味着你有反向控制。

我明确指出 - 当你反转控件时,你基本上会使应用程序的各个组件解决它们自己的依赖关系。当您反转控件时,您允许解析依赖关系发生在其他某个层。这就是控制的“反转”。