В ASP.NET Core 1.0 я пытаюсь ввести в BaseRepository
constuctor два параметра. Один из них - SwitchContext (зарегистрированный ниже и настраиваемый параметр - RepositoryCacheMode (просто перечисление))Инъекция зависимостей ядра ASP.NET с необязательными параметрами
У меня есть способ зарегистрировать параметр вроде этого?
services.AddTransient<RepositoryCacheMode, RepositoryCacheMode.None>();
или как получить экземпляр SwitchContext для регистрации BaseRepository?
public static void AddDependency(this IServiceCollection services)
{
services.AddTransient<SwitchContext, SwitchContext>();
services.AddTransient<IRepository, BaseRepository>(t => new BaseRepository(// How to get instanse of SwitchContext ? // , RepositoryCacheMode.None));
Конструктор BaseRepository:
public BaseRepository(SwitchContext context, RepositoryCacheMode cacheMode = RepositoryCacheMode.FirstLevel)
{
Context = context;
_cacheMode = cacheMode;
}
Я флажком, как дубликат, потому что он выглядит почти точно такой же вопрос. Единственное различие заключается в том, что вы используете значения по умолчанию, и он хочет иметь значение по умолчанию null. в обоих случаях это не работает, и объясняется там почему. –