Какие параметры у меня есть для автоматизации привязок с помощью NInject

Вместо того, чтобы вручную связывать каждый класс, какие методы и шаблоны, если таковые имеются, рекомендуются для автоматической настройки привязок?

Например, подавляющее большинство привязок просто выглядят так:

Bind<icustomerrepository>.To<customerrepository>();
</customerrepository></icustomerrepository>

После того, как модули станут большими, вы можете получить 100s привязок, которые выглядят точно так же. Может ли это быть автоматизировано?

1 ответ

проверьте расширение условных обозначений: 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>();
 }
</defaultconvention></idefaultconvention></defaultbindinggenerator>

licensed under cc by-sa 3.0 with attribution.