1

Ich habe ein ASP.NET Core 2-Projekt unter netcore2 ausgeführt. Ich BuildWebHost zwingende wie so in einer neuen JSON-Konfigurationsdatei hinzufügen:reloadOnChange funktioniert nicht in .NET Core 2

public static IWebHost BuildWebHost(string[] args) => 
    WebHost.CreateDefaultBuilder(args) 
     .ConfigureAppConfiguration((hostingContext, config) => 
     { 
      config.AddJsonFile("mysettings.json", optional: false, reloadOnChange: true); 
     }) 
     .UseStartup<Startup>() 
     .Build(); 

jedoch in einer Action für Controller, ich bin versucht, es zu packen, wie so:

public override void OnActionExecuting(ActionExecutingContext filterContext) 
{ 
    base.OnActionExecuting(filterContext); 

    var options = filterContext.HttpContext.RequestServices.GetService(typeof(IOptions<MySettings>)); 

    /// Do something with the options. 
} 

Die Optionen scheinen immer noch die gleichen Optionen zu sein, die beim Hochdrehen der App vorhanden waren. Irgendeine Idee, warum sie nicht nachladen?

Antwort

2

Verwenden Sie IOptionsSnapshot<>, wenn Sie auf Änderungen in der Konfiguration reagieren müssen

Verwandte Themen