ASP.net 控制器中的依赖注入

Depedency Injection In ASP.net controller

我正在与 Entity Framework 合作一个项目。我想知道使用实体连接的依赖注入进行单元测试是否正常。我想从小做起,然后潜入 DI 的世界,我还使用(在一个简单的应用程序中测试过)Autofac 作为容器。 也是未来的问题,如果我有超过 50 个视图模型,我应该如何为它们使用依赖注入。我在网上读到控制器构造函数中有超过 5 个依赖项是不正常的。

尽管您的问题并不真正属于 Whosebug,但我会尝试通过建议两个非常有用的开源框架来为您提供正确的方向。

  • Ninject 真的很容易使用,将使依赖注入的实现更加愉快和结构化。
  • Moq is used for writing unit tests and helps with "mocking",这对 MVC 和任何类型的依赖注入至关重要。

这两个框架都可以通过 NuGet Package Manager 轻松获得。

网络上有大量教程和演示,但 here 是一个使用这两个框架编写单元测试的简单教程。