加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net-core – 删除继承的ASP.NET Core appsettings

发布时间:2020-12-16 03:50:26 所属栏目:asp.Net 来源:网络整理
导读:我的启动中有以下设置: var builder = new ConfigurationBuilder() .AddJsonFile("appsettings.json",true,true); .AddJsonFile($"appsettings.{env.EnvironmentName}.json",true) appsettings.json: { "Logging": { "IncludeScopes": false,"LogLevel": {
我的启动中有以下设置:

var builder = new ConfigurationBuilder()
    .AddJsonFile("appsettings.json",true,true);
    .AddJsonFile($"appsettings.{env.EnvironmentName}.json",true)

appsettings.json:

{
  "Logging": {
    "IncludeScopes": false,"LogLevel": {
      "Default": "Debug","System": "Information","Microsoft": "Information"
}

我知道我可以通过添加具有不同值的匹配JSON结构来覆盖给定环境的有效设置,并省略我想要继承的那些,例如appsettings.Development.json:

{
  "Logging": {
    "LogLevel": {
      "Default": "Warning"
}

但是我可以删除条目或部分,除非用空值覆盖每个值属性吗?

-S

解决方法

根据 Configuration in ASP.NET Core文档,从两个文件加载设置,如果在它们两者中指定了设置,而在后者中设置了设置,即设置中的appsettings.{env.EnvironmentName} .json将覆盖第一个.

因此,如果在appsettings.json文件中指定了一个设置,并且您希望在开发环境中运行时将其删除,则需要在appsettings中相应地显式设置(null,{}等,具体取决于设置) .Development.json文件.

但是,此类设置可能会建议您的设置不应位于通用appsettings.json文件中,而应直接位于特定环境配置设置文件中.这样,编写设置可能会更容易.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读