带有ninject的常规CLASS LIBRARY中的构造函数注入

时间:2016-02-25 19:32:50

标签: ninject class-library

我有一个DotNet类库项目(不是MVC WebAPI项目),我想在NInject中使用构造函数注入。我从Nugget安装了包(v3.2.0.0运行时版本v4.0.30319),并将每个接口绑定到各自的实体类。这些上下文指向SQL数据库中的3个模式。但是,这种依赖性解决方案从未发生过。如果使用new()启动上下文,则库可以正常工作。谢谢你的帮助。



  public class SomeRepositoryClass : ISomeInterfaceAsync
  {
    private IDBSchema1Context _schema1Ctx; //= new DBSchema1();

    private IDBSchema2Context _schema2Ctx; //= new DBSchema2();

    private IDBSchema3Context _schema3Ctx; //= new DBSchema3();

    private IModelFactory _appModelFactory; //= new ModelFactory();

   public SomeRepositoryClass (
     IDBSchema1Context DBSchema1, 
     IDBSchema2Context DBSchema2, 
     IDBSchema3Context DBSchema3,
     IModelFactory modelFactory)
    {
      _schema1Ctx = DBSchema1;
      _schema2Ctx = DBSchema2;
      _schema3Ctx = DBSchema3;
      _appModelFactory = modelFactory;
    }






  public class Bindings : NinjectModule
  {
    public override void Load()
    {
      Bind<IDBSchema1Context>().To<DBSchema1>();
      Bind<IDBSchema2Context>().To<DBSchema2>();
      Bind<IDBSchemaC3ontext>().To<DBSchema3>();
      Bind<IModelFactory>().To<ModelFactory>();
    }
  }
&#13;
&#13;
&#13;

1 个答案:

答案 0 :(得分:0)

事实证明,我甚至不需要类库项目中的NInject,即使构造函数注入使用接口也是如此。调用类库的WebAPI需要Nuget的NInject和Ninject.Web.WebApi包。