如何在Web项目中使用慢速猎豹转换配置文件

Pre*_*hts 9 msbuild slowcheetah

所以我想要完成的是转换构建中的所有配置文件.

  • Web.config文件
  • App.config中
  • .... config.xml中

在项目文件中,它们看起来像这样:

<None Include="FooBar.config.xml">
  <TransformOnBuild>true</TransformOnBuild>
</None>
<None Include="FooBar.config.Release.xml">
  <DependentUpon>FooBar.config.xml</DependentUpon>
  <IsTransformFile>True</IsTransformFile>
</None>
Run Code Online (Sandbox Code Playgroud)

一切都适用于Windows服务和Windows应用程序.但对于网络项目来说,慢速猎豹并没有进行变革.经过一些研究后,我发现:"对于Web项目,当您发布或打包应用程序时,文件会被转换." 从慢速猎豹扩展页面.事实上,当我发布Web项目时,转换正确完成.

那么如何更改慢速猎豹默认行为并在构建服务器上执行所有变换?

环境:

  • TFS 2010
  • 构建服务器上的慢速猎豹版本:1.0.10727.0

Pre*_*hts 6

所以我如何解决这个问题.我编辑了SlowCheetah的目标文件

可以在您的构建服务器上找到C:\ Users\BuildUser\AppData\Local\Microsoft\MSBuild\SlowCheetah\v1.打开文件并找到以下行:

<BuildDependsOn Condition=" '$(IsWap)'!='true' ">
    <BuildDependsOn> 
      $(BuildDependsOn);
      TransformAllFiles
    </BuildDependsOn>
Run Code Online (Sandbox Code Playgroud)

我已经删除了这个条件.

结果:

<BuildDependsOn> 
  $(BuildDependsOn);
  TransformAllFiles
</BuildDependsOn>
Run Code Online (Sandbox Code Playgroud)

  • 条件存在,只有在发布时才会发生.但我们不使用发布.我们有自定义Wix安装程序. (2认同)