如何管理CD的连接字符串

时间:2018-09-03 01:21:34

标签: c# .net continuous-integration cd

我有一个运行4.0的旧版.net应用程序,已经得到了维护,并且作为维护的一部分,我正在更新CI / CD系统。

这样做,我发现替换了许多手册文件内容,用于管理特定于环境的变量。

其中之一是连接字符串,我想知道跨环境处理app和web.config文件中的推荐连接字符串的推荐方法是什么。

我尝试过slowcheetah,但是当您不使用发布选项时,它不会对web.config进行转换。

感谢您的帮助。

1 个答案:

答案 0 :(得分:1)

是的,您可以使用msbuild脚本执行此操作:

<UsingTask TaskName="TransformXml" AssemblyFile="bin\Microsoft.Web.Publishing.Tasks.dll"/>


  <Target Name="GenerateConfigs">

    <MakeDir Directories="$(BuildOutput)" Condition="!Exists('$(BuildOutput)')"/>

    <TransformXml Source="BTSNTSvc.exe.config"

                  Transform="BTSNTSvc.exe.$(Configuration).config"

                  Destination="$(BuildOutput)\BTSNTSvc.exe.config"/>

  </Target>

请查看以下资源,以执行配置转换,而不必进行发布。该摘录摘自第二个链接。

http://matthewvukomanovic.blogspot.com/2012/10/webconfig-transform-without-publishing.html

http://geekswithblogs.net/EltonStoneman/archive/2010/08/20/using-msbuild-4.0-web.config-transformation-to-generate-any-config-file.aspx