Ninject 自动注入所有接口和类 C# 和 MVC



我想创建一些代码行,自动注入所有类和接口。

我认为这足以创建一个像IBase这样的基本接口

然后

public interface IManager : IBase { }

public interface IService : IBase { }

和类

public class Manager : IManager { }

public class Service : IService { }

控制器的构造函数可能如下所示:

public MyController(IManager manager) { }

可以注册所有接口和类,这些接口和类IBase避免像

kernel.Bind<IService>().To<Service();

谢谢

这可以通过使用约定绑定来实现:

https://github.com/ninject/Ninject.Extensions.Conventions

例:

kernel.Bind(x => x.FromThisAssembly().SelectAllClasses().BindAllInterfaces());

这会将调用程序集的所有类绑定到所有实现的接口。

最新更新