我无法让我的环境在开发和暂存之间切换。
无论环境变量是什么,它都会暂停。
这是我的launchsettings.json
event_id - job - count
NULL - farmer - 0
NULL - miner - 0
1 - carpenter - 10
1 - farmer - 3
2 - carpenter - 3
2 - miner - 4
无论我使用何种发布配置文件,环境都保持在“暂存”状态
就appsettings.X.json而言,我有3个。
{
"iisSettings": {
"windowsAuthentication": false,
"anonymousAuthentication": true,
"iis": {
"applicationUrl": "http://localhost/WebService",
"sslPort": 0
},
"iisExpress": {
"applicationUrl": "http://localhost:51658/",
"sslPort": 0
}
},
"profiles": {
"IIS Express": {
"commandName": "IISExpress",
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Staging"
}
},
"WebService": {
"commandName": "Project",
"launchBrowser": true,
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development"
},
"applicationUrl": "http://localhost:51659/"
}
}
}
答案 0 :(得分:1)
您必须通过设置Windows环境变量来设置环境。将使用此环境加载正确的appsettings.json
文件。
这可以通过执行
使用命令行来完成set ASPNETCORE_ENVIRONMENT=Development
This website显示了如何为不同的操作系统设置环境。
答案 1 :(得分:0)
我认为这取决于您使用什么来维护应用程序Docker,IIS或其他东西。
文档说:
每个IIS应用程序池
为隔离的各个应用设置环境变量 应用程序池(在IIS 10.0+上受支持),请参阅AppCmd.exe命令 环境变量主题部分。
您可能需要在隔离环境中运行应用程序,并且您需要设置该变量。
https://docs.microsoft.com/en-us/aspnet/core/fundamentals/environments