我正在尝试删除默认情况下使用新MVC5项目提供的服务定位器反模式。我试图使用Ninject来实现DI。我已经提到了以下指南,它是为了统一而不是MVC5应用程序。
http://tech.trailmax.info/2014/09/aspnet-identity-and-ioc-container-registration/
据我所知,该文章与新MVC5应用程序之间的代码差别不大。然而,有一件事我似乎无法弄清楚该怎么做。
在我上面提供的文章中存在以下方法
private static void RegisterTypes(IUnityContainer container)
{
container.RegisterType<ApplicationDbContext>();
container.RegisterType<ApplicationSignInManager>();
container.RegisterType<ApplicationUserManager>();
}
我试图了解这个容器是什么以及我将在MVC5中注册我的类。我是否需要将我的课程注册到某个容器中?还在这里学习,我对MVC5和身份都很陌生,所以任何帮助都是最受欢迎的。
答案 0 :(得分:0)
容器包含每个抽象及其实现的配置设置。 container
用于创建依赖项,并在需要时自动注入它们。只要需要抽象实例,容器就会将其提供给请求者。它根据请求自动创建对象,并在需要时注入它们。容器有助于以简单方便的方式管理应用程序中的依赖关系。