【问题标题】:Config.json property replacement in ASP.NET CoreASP.NET Core 中的 Config.json 属性替换
【发布时间】:2016-04-30 02:50:22
【问题描述】:

我在 ASP.NET Core 启动时有以下内容:

builder
  .AddJsonFile("config.json", false)
  .AddJsonFile($"config.{hostingEnvironment.EnvironmentName}.json", true);

这样我就可以使用配置文件了:

config.json
config.development.json
config.production.json
config.staging.json

如果我有一个在生产中不同但在开发和暂存中相同的属性,我是否应该将该属性放在 config.json 和生产中的另一个上以替换 config.json 中的值?

或者我需要在config.development.json、config.production.json和config.staging.json中添加属性并从config.json中删除?

我的意思是,ASP.NET Core 配置中是否有像 ASP.NET 4 的 Web.config 中那样的属性替换?

【问题讨论】:

  • 如果你有多个配置源并且属性存在于多个源中,那么最后一个源获胜,所以添加配置源的顺序很重要
  • 在我的情况下,我总是先添加 config.json,然后添加另一个,这意味着我在 config.json 中有一个属性,而在 config.production.json 中有另一个值来替换基地一。这是我不确定的......谢谢

标签: asp.net-core


【解决方案1】:

这里是显示配置文件倒序遍历的源代码link

foreach (var provider in _providers.Reverse())

config.{hostingEnvironment.EnvironmentName}.json 中的任何键都将覆盖 config.json 中的相同键

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-12-08
    • 2016-07-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多