【发布时间】:2012-09-30 19:58:22
【问题描述】:
我阅读了 MVC 中的 IDependencyResolver(基础书籍),但我不知道 mvc 中的 DependencyResolver 到底是什么?
谁能解释一下这些方法?
【问题讨论】:
标签: asp.net-mvc
我阅读了 MVC 中的 IDependencyResolver(基础书籍),但我不知道 mvc 中的 DependencyResolver 到底是什么?
谁能解释一下这些方法?
【问题讨论】:
标签: asp.net-mvc
它允许在控制器和其他组件中实现依赖注入。布拉德威尔逊为此写了一封nice article。例如,当您实现能够为给定类型返回正确实现的自定义依赖解析器时,您可以让 ASP.NET MVC 控制器将抽象依赖或接口作为构造函数参数:
public class HomeController: Controller
{
private readonly ISomeService _someService;
public class HomeController(ISomeService someService)
{
_someService = someService;
}
... some actions
}
如果您编写了自定义依赖解析,它将能够在实例化控制器时注入接口的正确实现。
依赖注入允许应用程序的不同层之间的耦合更弱,并使它们更容易单独进行单元测试。
【讨论】: