我们的Team Foundation Server必须构建同一解决方案的三个不同版本。它们之间唯一的区别是app.config
文件,应该为每个构建更改。如何在构建期间选择正确的文件?
我想要做的是切换app.config文件然后构建,重复每个文件。即:
<Replace file="app.config" with="app.config.one"> <!-- and then -->
<SolutionToBuild Include="project.sln"/>
<Replace file="app.config" with="app.config.two"> <!-- and then -->
<SolutionToBuild Include="project.sln"/>
<Replace file="app.config" with="app.config.three"> <!-- and then -->
<SolutionToBuild Include="project.sln"/>
(我意识到上面是näive,但它显示了我想做的事情。)
我尝试过使用BeforeCompileSolution
等来回设置属性但是没有。
顺便说一句,这是一个ClickOnce项目(使用Publish目标),因此我必须在编译步骤之前选择正确的app.config
文件,因为this问题中解释了文件完整性检查。 / p>
答案 0 :(得分:0)
这似乎是不可能的,所以我创建了三个不同的构建来解决它。每个构建都会在预构建目标中复制单个文件。我现在有三个tfsbuild.proj文件完全相同,除了文件名。糟透了,但它确实有效。