.NetCore 设置环境变量
开发过程中经常要发布一个版本到测试服上给测试人员测试,可能需要直接输出错误信息,需要设置环境变量为Development,如果是IIS可以设置web.config环境变量或者IIS环境变量,见下面这篇文章
https://blog.csdn.net/lilinoscar/article/details/108362211
如果是linux系统,可以设置临时环境变量,或者永久环境变量
但是改上述配置都比较繁琐,永久环境变量导致所有应用都必须用同一个环境变量,临时变量的缺点就是每次发布都得重新设置,而且只对当前窗口有效,不能关闭。
可以通过命令行直接传一个参数到系统入口设置环境变量,.NetCore3.1之前可以在 Main(string[] args)接受参数判断
.Net6可以直接这么写
1 WebApplicationBuilder builder; 2 if (args.Contains("Development")) 3 { 4 builder = WebApplication.CreateBuilder(new WebApplicationOptions 5 { 6 Args = args, 7 EnvironmentName = Environments.Development 8 }); 9 } 10 else 11 { 12 builder = WebApplication.CreateBuilder(args); //默认 13 }
通过命令行启动:
dotnet aspnetcore.dll --urls http://localhost:7001 Development
配置supervisor:
command=dotnet aspnetcore.dll --urls http://localhost:7001 Development
docker 中:
ENTRYPOINT ["dotnet", "aspnetcore.dll", "--urls", "http://localhost:7001","Development"]