1

netcore2で実行されているASP.NET Core 2プロジェクトがあります。私はそうのような新しいJSON設定ファイルに追加するBuildWebHostをオーバーライドしています:reloadOnChangeが.NET Core 2で動作しない

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

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

    /// Do something with the options. 
} 

オプション:

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

ただし、コントローラ用のActionFilterに、私はそうのようにそれをつかむしようとしていますアプリのスピンアップ時に存在していたオプションと同じように見えます。なぜ彼らは再読み込みしていないか?

答えて

2

設定の変更に応答する必要がある場合はIOptionsSnapshot<>を使用してください。

関連する問題