gpt4 book ai didi

json - Microsoft.Extensions.Configuration 的 reloadOnChange 如何为 appsettings.json 工作

转载 作者:行者123 更新时间:2023-12-03 20:51:08 25 4
gpt4 key购买 nike

在两个项目(一个 .NET Core Web API 和一个 .NET Core WindowsService)中,我使用 appsettings.json 进行配置。

 var configuration = new ConfigurationBuilder()
.SetBasePath(System.IO.Directory.GetCurrentDirectory())
.AddJsonFile("appsettings.json", optional: false, reloadOnChange: true)
.AddEnvironmentVariables()
.Build();

在两者中,我都将 reloadOnChange 设置为 true 并将其用作注入(inject) IOptions通过依赖注入(inject)。在 web api 中进入 Controller 类,在服务中进入使用设置的类。

不幸的是,当 appsettings.json 更改时,我发现这些值不会更改。

在 web api 上,我创建了一个 Controller 来从配置中返回一个字符串值,这与启动时保持相同。

所以我的问题:
  • 任何人都知道这是否应该开箱即用(至少在 web api 中)?
  • 我必须做些什么才能让它起作用?
  • 最佳答案

    假设您使用的是 .net-core 1.1(因为 reloadOnChange 仅在 ASP.NET Core 1.1 及更高版本中受支持)它实际上是 IOptionsSnapshot你想要(参见
    Configuration in ASP.NET Core - IOptionsSnapshot ) 而不仅仅是 IOptions .

    关于json - Microsoft.Extensions.Configuration 的 reloadOnChange 如何为 appsettings.json 工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43341058/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com