我使用ASP.NET 2.0的核心,我必須在Main
方法類似這樣的配置代碼:ASP.NET核心配置reloadOnChange與IOptionsSnapshot仍然沒有響應
public static void Main(string[] args)
{
var environment = Environment.GetEnvironmentVariable("ASPNETCORE_ENVIRONMENT");
var configuration = new ConfigurationBuilder()
.SetBasePath(Directory.GetCurrentDirectory())
.AddJsonFile("appsettings.json", optional: true, reloadOnChange: true)
.AddJsonFile($"appsettings.{environment ?? "Production"}.json", optional: true, reloadOnChange: true)
.AddEnvironmentVariables()
.AddCommandLine(args)
.Build();
}
我已在reloadOnChang
E設置爲true ,在我的控制,我使用IOptionsSnapshot
public HomeController(ILogger<HomeController> logger, IOptionsSnapshot<AppSettings> options)
但是,當我修改我在appsettings.json
的價值觀,我必須重新啓動我的應用程序每次或修改都沒有隻是通過刷新回升瀏覽器。我究竟做錯了什麼?我試圖用控制檯和IIS Express運行應用程序;我也試過IOptionsMonitor
,同樣的事情。順便提一下,IOptionsMonitor
和IOptionsSnapshot
之間有什麼區別?
你如何註冊'AppSettings'選項? – poke
我在Startup.cs中添加了像這樣的服務的AppSettings。配置(Configuration.GetSection(「AppSettings」)); –