香港人是狗,zxv10 h608b 破解,琵琶鱼
在做项目的过程中,一般都有好几套环境,如dev环境,qa环境等,通常情况下,不同环境的某些配置文件值是不一样的,部署时手动修改的方式管理多套环境的配置文件是很累的,而且很容易出错,最好的方式是部署时根据选择的配置管理器自动生成不同的配置。
在新建的web 应用程序中,我们会看到web.config是下面这样的,而且发布时会自动选择web.release.config配置的值,具体可参考之前写的另一篇博客 《web.config 自动替换值》
但是其它类型的项目,比如控制台应用程序,部署时如何实现自动替换呢?
<propertygroup> <projectconfigfilename>app.config</projectconfigfilename> </propertygroup>
<none include="app.config" /> <none include="app.debug.config"> <dependentupon>app.config</dependentupon> </none> <none include="app.release.config"> <dependentupon>app.config</dependentupon> </none>
<import project="$(msbuildextensionspath)\microsoft\visualstudio\v15.0\web\microsoft.web.publishing.targets" />
import
标签后面添加 target
标签<target name="afterbuild"> <transformxml source="@(appconfigwithtargetpath)" transform="$(projectconfigtransformfilename)" destination="@(appconfigwithtargetpath->'$(outdir)%(targetpath)')" /> </target>
接下来的使用方式就和web 应用程序里一样了,打开app.release.config,修改为如下:
<?xml version="1.0" encoding="utf-8" ?> <configuration xmlns:xdt="http://schemas.microsoft.com/xml-document-transform"> <appsettings> <add key="environment" value="qa" xdt:transform="replace" xdt:locator="match(key)" /> </appsettings> </configuration>
部署时,当选择release模式时,生成的配置如下:
<add key="environment" value="qa" />
当选择debug模式时,生成的配置仍是app.config中的配置,如下:
<add key="environment" value="dev" />
参考文章:1.在部署 c#项目时转换 app.config 配置文件
如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复
Blazor server side 自家的一些开源的, 实用型项目的进度之 CEF客户端
.NET IoC模式依赖反转(DIP)、控制反转(Ioc)、依赖注入(DI)
vue+.netcore可支持业务代码扩展的开发框架 VOL.Vue 2.0版本发布
网友评论