我的启动中有以下设置:
var builder = new ConfigurationBuilder()
.AddJsonFile("appsettings.json", true, true);
.AddJsonFile($"appsettings.{env.EnvironmentName}.json", true, true)
应用程序设置.json:
{
"Logging": {
"IncludeScopes": false,
"LogLevel": {
"Default": "Debug",
"System": "Information",
"Microsoft": "Information"
}
我知道我可以通过添加具有不同值的匹配 JSON 结构并省略我想要继承的结构来覆盖给定环境的有效设置,例如appsettings.Development.json:
{
"Logging": {
"LogLevel": {
"Default": "Warning"
}
但我可以吗remove一个条目或一个部分,除非用空值覆盖每个值属性?
-S
根据文档中,设置是从两个文件中加载的,如果在两个文件中都指定了设置,则比在后者中指定设置,即appsettings.{env.EnvironmentName}.json
在您的设置中,将覆盖第一个。
因此,如果在appsettings.json
文件,并且您想在运行时删除它发展环境,您需要在appsettings.Development.json
file.
但是,这样的设置可能表明您的设置不应位于通用范围内appsettings.json
文件,而是在特定环境中直接配置设置文件。
这样,编写设置可能会更容易。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)