如何在IApplicationBuilder的扩展方法中访问自定义设置

时间:2019-04-03 09:09:30

标签: c# asp.net-core .net-core asp.net-core-2.2 .net-core-2.2

我正在为服务编写扩展方法扩展方法,以将其添加到IServiceCollection并在IApplicationBuilder上使用。

AddService(this IServiceCollection services, MySettingsClass settings)还获得了一些应使用的设置。

我需要在UseService(this IApplicationBuilder app)方法中使用那些确切的设置,但是在这里不知道如何访问它们。

如何将这些设置从ConfigureServices导入到Configure中,而不将其两次传递(例如UseService(this IApplicationBuilder app, MySettingsClass settings))。

1 个答案:

答案 0 :(得分:0)

您可以使用IOption示例

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

    return services;
}

然后通过注入ServiceConfigModel(调用IOptions< ServiceConfigModel> configuration来获取对象configuration.value的值。