Как получить доступ к пользовательским настройкам в методе расширения для IApplicationBuilder - PullRequest
0 голосов
/ 03 апреля 2019

Я пишу методы расширения для моего сервиса, чтобы добавить его в IServiceCollection и использовать его в IApplicationBuilder.

AddService(this IServiceCollection services, MySettingsClass settings) также получает некоторые параметры, которые следует использовать.

Мне нужны эти точные настройки в методе UseService(this IApplicationBuilder app), но я не знаю, как получить к ним доступ.

Как мне перенести эти настройки из ConfigureServices для настройки, не передавая их дважды (например, UseService(this IApplicationBuilder app, MySettingsClass settings)).

1 Ответ

0 голосов
/ 03 апреля 2019

Вы можете использовать IOption, пример

public static IServiceCollection AddService(this IServiceCollection services, [NotNull]Action<ServiceConfigModel> configuration)
{
    services.Configure(configuration);

    return services;
}

Затем получите значение объекта ServiceConfigModel, введя IOptions< ServiceConfigModel> configuration (вызовите configuration.value, чтобы получить значение).

...