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

时间:2014-02-07 08:37:39

标签: 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>

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

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

环境:

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

2 个答案:

答案 0 :(得分:6)

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

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

<BuildDependsOn Condition=" '$(IsWap)'!='true' ">
    <BuildDependsOn> 
      $(BuildDependsOn);
      TransformAllFiles
    </BuildDependsOn>

我已经删除了这个条件。

<强>结果:

<BuildDependsOn> 
  $(BuildDependsOn);
  TransformAllFiles
</BuildDependsOn>

答案 1 :(得分:-2)

这些天有一个更好的解决方案。只需使用transformxml msbuild任务。我不认为慢速猎豹会继续维持,因为这个功能是msbuild的原生功能。更多https://msdn.microsoft.com/en-us/library/dd465326(v=vs.110).aspx