ASP.NET Core多环境配置
2020-07-02
2543 0.NET Core多环境配置,从IWebHostEnvironment 对象来看,.NET Core自带设定了3种环境,也可以自己定义环境名称。
//env.IsStaging预览
//env.IsDevelopment开发
//env.IsProduction生产
//env.IsEnvironment("环境名称")
配置环境方法
方法多环境
在Startup类中的ConfigureServices和Configure两个方法可以根据环境不同,编写多个方法。
例如在添加一个ConfigureProductionServices方法和ConfigureProduction方法。
这样如果在配置文件中的全局配置ASPNETCORE_ENVIRONMENT配置为Production时,启动应用的时候就会执行ConfigureProductionServices和ConfigureProduction方法进行主机配置,而不会执行ConfigureServices和Configure两个方法。
在没有找到名字跟环境配置名称匹配的方法时,就会执行默认的ConfigureServices和Configure这两个方法。
命名方式是.NET Core约定的。
类多环境
创建多个Startup类,类的命名规则是Startup{环境名称}.cs,例如生产环境的Startup就命名为StartupProduction.cs。
命名方式是.NET Core约定的。
这样创建多个类,在不同环境启动时做不同的配置。
类多环境的话再Program.cs里也要相应修改一下,因为原来Program.cs里是写死webBuilder.UseStartup<Startup>();的,可以做如下修改
// 主机配置项,指定主机的WEB应用启动类
webBuilder.UseStartup(Assembly.GetExecutingAssembly().FullName);
//webBuilder.UseStartup<Startup>();
这样修改配置文件里的环境就可以根据环境进行不同配置了。
您可能感兴趣: