.NET绿叶社区!
返回

ASP.NET Core多环境配置

2020-07-02 .NET Core 多环境 配置 227 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>();

这样修改配置文件里的环境就可以根据环境进行不同配置了。

点赞 收藏

顶部