在开发的时候可能会遇到这种情况:
我有多个生产环境,华为云服务器,阿里云服务器,腾讯云服务器等等,又或者是虚拟机1,虚拟机2等等。每个环境对应不同的appsettings.json文件,在这里插入图片描述
我这里需要的是把发布包放到不同的环境就会自动对应不同的appsettings。

如何自动识别环境并对应?其实很简单,但是网上的教程都是抄来抄去,而且还抄漏了,就把一个简单的问题搞得云里雾里的。以下正式开讲。

1.先设置操作系统的环境变量

我这里是用的Windows展示

步骤1

在这里插入图片描述
在这里插入图片描述
变量名不区分大小写,但需要正确拼写。
值对应appsettings.xxx.json。

2.发布到对应的环境然

在program.cs加上这段代码测试一下,在对应的环境启动发布包。
在这里插入图片描述
在这里插入图片描述

结束总结:

这样,就不用到某个生产环境手动替换配置文件了,可以提前准备并整理的井井有条。
如果不配置环境变量,.Net 是会默认当前系统的环境变量aspnetcore_environment 为Production的。

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐