In a asp.net core web api middleware, is it possible to access the configuration inside the middleware? Can someone guide me how this is done?
In a middle-ware
you can access settings. To achieve this, you need to get IOptions<AppSettings>
in the middle-ware
constructor. See following sample.
public static class HelloWorldMiddlewareExtensions
{
public static IApplicationBuilder UseHelloWorld(
this IApplicationBuilder builder)
{
return builder.UseMiddleware<HelloWorldMiddleware>();
}
}
public class HelloWorldMiddleware
{
private readonly RequestDelegate _next;
private readonly AppSettings _settings;
public HelloWorldMiddleware(
RequestDelegate next,
IOptions<AppSettings> options)
{
_next = next;
_settings = options.Value;
}
public async Task Invoke(HttpContext context)
{
await context.Response.WriteAsync($"PropA: {_settings.PropA}");
}
}
public class AppSettings
{
public string PropA { get; set; }
}
For more information see here.
来源:https://stackoverflow.com/questions/47722937/asp-net-core-2-0-middleware-accessing-config-settings