评论

.NET Core 多环境的配置、调试和部署

推荐关注↓

背景

工作需要配置多个环境,用于 开发Development、预览Staging、生产Production。

微软官方文档-配置:https://docs.microsoft.com/zh-cn/aspnet/core/fundamentals/configuration/?view=aspnetcore-6.0

开始

.NET Core对多环境有很好的支持,默认会读取appsettings.{Environment}.json。

例如,appsettings.Production.json 和 appsettings.Development.json。

其中的Environment就是环境名称

配置创建环境

项目中已经存在两个配置文件,它们对应的环境都是Development,也就是对应会读取appsettings.Development.json中的配置

创建配置文件,选择【项目】

修改【环境变量】、【应用URL】 ASPNETCORE_ENVIRONMENT=Staging ASPNETCORE_ENVIRONMENT=Production

继续炮制一个Production

创建环境配置文件

接着创建环境对应的配置文件,直接复制两个appsettings.Development.json,并重命名为 appsettings.Staging.json appsettings.Production.json

在配置文件中写入配置用以测试["CustomConfig": "这里是Development环境的配置"]

调试

这时已经可以在启动项目时选择不同的环境配置了,若选择Staging,就会读取appsettings.Staging.json

修改控制器代码,尝试读取配置

[ ApiController]

[ Route( "[controller]") ]

publicclassWeatherForecastController: ControllerBase

{

privatereadonlyIConfiguration Configuration;

publicWeatherForecastController( IConfiguration configuration)

{

Configuration = configuration;

}

[ HttpGet]

publicActionResult GetCustomConfig( )

{

returnContent( $@"读取CustomConfig配置为: {Configuration[ "CustomConfig"]} " );

}

}

部署

环境配置已经配好了,接下来我希望将文件发布到不同环境,能自动读取对应配置文件。

右键网站->发布,创建发布配置

创建配置后会生成PublishProfiles文件夹

在{Environment}.pubxml文件中添加环境参数: <EnvironmentName>Staging</EnvironmentName>

在站点点击发布,到发布位置打开web.config,可以看到多了环境变量参数。

转自:朱角

- EOF -

点击标题可跳转

利用 .NET 升级助手将 .NET Framework 项目升级为 .NET 6

.NET Core 实现后台任务(定时任务)Longbow.Tasks 组件

.NET 6 基于Abp Vnext 开发的 API网关项目

看完本文有收获?请转发分享给更多人

推荐关注「DotNet」,提升.Net技能

点赞和在看就是最大的支持❤️返回搜狐,查看更多

责任编辑:

平台声明:该文观点仅代表作者本人,搜狐号系信息发布平台,搜狐仅提供信息存储空间服务。
阅读 ()
推荐阅读