ASP.NET Core多环境配置文件问题
<h2 id="前言">前言 在我们开发的过程中,往往会有这几个环境,Dev、QA、Pre和Pro。 当然不同的环境可能大家的叫法会有点不一样。 最常遇到的问题,或许就是不同环境的配置文件问题! 一个环境一个配置文件是很常见的做法。 在开发的时候,我们可以通过修改launchSettings.json来达到不同环境的切换。 本质是通过ASPNETCORE_ENVIRONMENT这个变量值来完成。 但是部署到服务器的时候就需要换个方式来处理这个问题了。 因为发布后的文件并没有launchSettings.json。 这里简单介绍两种方法来处理这个问题。 设置系统的环境变量。 修改 export ASPNETCORE_ENVIRONMENT=QA 再执行source命令,使其生效。 source /etc/profile 执行
这种做法,虽然可以完成不同环境的切换问题,但是要为每台机器设置一个环境变量。 由于直接是镜像copy出来的系统,好多系统配置是已经做好标准规范的了,所以这样做还是会很麻烦,运维的同学肯定也不愿意每copy一台机器,都帮你改这个东西。 所以这个方法自已玩玩的机率比较多。 在启动程序的时候,添加一个名为environment的Command-Line参数,同时指定它的值为对应的环境值。 下面的例子是托管在Jexus时的写法。 AppHost={ cmd=dotnet /var/www/testweb/myweb.dll --environment QA; root=/var/www/testweb; port=0; } 这个时候看到的日志也是一样的效果。
通过这种方法,可控性看上去比较好,只需要加个参数即可。 如果用方法2需要注意一点: 在Program.cs中,不要忘记AddCommandLine。 不过如果用的是 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- asp.net – 从源代码,aspx,xaml中提取可本地化的字符串到资
- jqGrid过滤器工具栏显示单个列的搜索运算符选择器
- asp.net – 防止加载MicrosoftAjaxWebForms.debug.js
- asp.net-mvc-5.1 – 如何在EnumDropDownListFor中设置所选值
- ASP脚本中的Python 500服务器错误
- asp.net-mvc-3 – ASP.NET MVC – 扩展Ajax.ActionLink方法
- asp.net-core – 无法从Client访问IdentityServer4 doc示例
- ASP.NET MVC4 Razor模板简易分页效果
- asp.net-core – ASP.NET Core Max并发连接?
- asp.net-mvc – 如何在ASP.NET MVC中提供自己的ICustomType
- asp.net – 为什么使用隐藏的字段?
- asp.net – RegularExpressionValidator VS Ajax
- asp.net – Entity Framework v2不支持sql 2000吗
- 在asp.net mvc中如何使用usercontrols来显示“岛
- .Net Core技术研究-Span<T>和ValueTuple<T&
- asp.net – Diffplex入门
- asp.net – WebMatrix Razor页面和全局使用语句
- asp.net – 如何设置表单身份验证cookie路径
- asp.net – 如何在加载/性能测试期间找到IIS要模
- ASP.NET MVC 1是否与ASP.NET MVC 2兼容?