爱上MVC~Web.Config的Debug和Release版本介绍
对于web.config来说,我们不会陌生,主要对站点进行相关参数的配置,当它被修改后,IIS里对应的应用程序池会被重启,而对于config里的一些配置我们一般使用比较多的是数据连接串connectionString,配置串appSettings,友好提示控制customErrors等,而今天我们要说的是配置文件config里的两种模式Debug和Release.
一般地,我们一个网站至少会对应有测试环境和生产环境两种,有的可能更多,而如果有两种的话我们的配置文件可以根据debug和release模式来做发布的区别,发测试时用debug模块,发生产环境用release模块,这种个模式对应的各种配置可能也是不一样的,看一下文件结构
web.config源文件
<connectionStrings> <add name="MyDbContext" connectionString="Data Source=localhost;port=3306;Initial Catalog=erp;user id=root;password=root;Charset=utf8" providerName="MySql.Data.MySqlClient" /> </connectionStrings>
测试环境web.debug.config
<connectionStrings> <add name="MyDbContext" connectionString="Data Source=外测;Initial Catalog=MyReleaseDB;Integrated Security=True" xdt:Transform="SetAttributes" xdt:Locator="Match(name)"/> </connectionStrings>
生产环境web.release.config
<connectionStrings> <add name="MyDbContext" connectionString="Data Source=外正;Initial Catalog=MyReleaseDB;Integrated Security=True" xdt:Transform="SetAttributes" xdt:Locator="Match(name)"/> </connectionStrings>
进行发布之后,我们看一下合并后的web.config(我们采用release模块进行发布)
发布命令
dotnet frameworks
msbuild /t:ResolveReferences;Compile
/t:_CopyWebApplication
/p:Configuration=Release
/p:WebProjectOutputDir=C:\Jenkins_Publish
/p:OutputPath=C:\Jenkins_Publish\bin
dotnet core
dotnet publish "%WORKSPACE%\src\LindAgileCore.Api" -o C:\Jenkins_Publish
发布release版本后的结果
<connectionStrings> <add name="MyDbContext" connectionString="Data Source=外正;Initial Catalog=MyReleaseDB;Integrated Security=True" providerName="MySql.Data.MySqlClient" /> </connectionStrings>
我们可以看到web.release.config文件的节点把之前的config对应的节点了,发布成功!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 记一次.NET内存居高不下排查解决与启示
2016-08-31 Redis集群~windows下搭建Sentinel环境及它对主从模式的实际意义
2012-08-31 当<script>中的type等于text/html时,我们可以做很多事件!
2011-08-31 数据库调整也可以遵循“开闭原则”