而不是手动必须绑定每个类,建议使用哪些方法和模式来自动设置绑定?
例如,绝大多数绑定看起来像这样:
Bind<ICustomerRepository>.To<CustomerRepository>();
Run Code Online (Sandbox Code Playgroud)
一旦模块变大,你就可以得到100个看起来完全相同的绑定.这可以自动化吗?
查看约定扩展:https: //github.com/ninject/ninject.extensions.conventions
using (IKernel kernel = new StandardKernel())
{
var scanner = new AssemblyScanner();
scanner.From(Assembly.GetExecutingAssembly());
scanner.BindWith<DefaultBindingGenerator>();
kernel.Scan(scanner);
var instance = kernel.Get<IDefaultConvention>();
instance.ShouldNotBeNull();
instance.ShouldBeInstanceOf<DefaultConvention>();
}
Run Code Online (Sandbox Code Playgroud)