我想在我的 .NET 微服务中创建多个appsettings.<environment>.json
文件,并且当我运行我的应用程序时,我想指定要使用的环境配置文件并让它们appsettings
按照指定的顺序应用。
例如,我希望拥有appsettings.Development.json
运行应用程序的默认本地开发属性,但我还希望将其覆盖为 hsql 数据库的appsettings.Hsqldb.json
DB 属性。appsettings.Development.json
launch.json
我在vs Code中有以下文件:
{
"configurations": [
{
"name": "C#: App Debug",
"type": "coreclr",
"request": "launch",
"program": "${workspaceFolder}/API/API.csproj",
"env": {
"ASPNETCORE_ENVIRONMENT": "Development"
},
}
]
}
我想要做的是"ASPNETCORE_ENVIRONMENT": "Development,Hsqldb"
。这样它就会先应用第一个属性Development
,Hsqldb
然后再应用覆盖它的属性。但这似乎不可能。
可以同时设置两个环境吗?有什么好办法吗?
结合这个答案,你可以使用自定义环境变量(在 中指定
launchSettings.json
),例如,CustomSettings
该变量将保存一个逗号分隔的列表,其中包含appsetings.xxx.json
需要额外加载的其他文件。最后一个选项有效。我建议不要在新
CustomSettings
变量中堆叠标准环境名称,而应使用更具功能性的名称,例如Hsqldb
。