【问题标题】:How do I let Ninject inject dependencies into my MVC controllers?如何让 Ninject 将依赖项注入到我的 MVC 控制器中?
【发布时间】:2014-06-02 09:55:15
【问题描述】:

如何将 UserManager 和 UserStore 注入控制器? Ninject 绑定是:

kernel.Bind<ApplicationDbContext>().ToSelf().InRequestScope();
kernel.Bind(typeof(UserManager<>)).ToSelf().InRequestScope(); 
kernel.Bind(typeof(UserStore<>)).ToSelf().InRequestScope();

【问题讨论】:

  • @HuorSwords 这是我的问题。答案是正确的,但是不知道如何将 UserStore 和 UserManager 注入到控制器中!
  • 我认为您必须在单个顶级工厂(或主控制器)中检索绑定的对象并将其传递给消费者类(使用构造函数或属性注入)。

标签: c# asp.net-mvc ninject


【解决方案1】:

为了能够自动连接 MVC 控制器,您需要替换 MVC 的默认 IControllerFactory 或默认 IDependencyResolver。有一个Ninject.MVC3 Nuget package 为您实现了一个依赖解析器。您可以在this Ninject integration page 上了解有关如何将 Ninject 与 MVC 集成的更多信息。

【讨论】:

    猜你喜欢
    • 2010-10-16
    • 1970-01-01
    • 2011-12-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多