0

我已經使用CIBuildWithCopyDirectoryTemplate.xaml中定義的默認工作流在TFS2010上設置了CI構建。MSBuild - 轉換web.config

它似乎正在改變web.config,但我不能爲我的生活定義這裏已經定義。在我的csproj文件中有一個AfterBuild任務,但我不認爲MSBuild使用它?

通過XAML鑽研既是文本文件,並在其工作流表單後已經離開我徹底難倒了,我還沒有讀哈希米本書我上週買的時間。如果有人能指出我的正確方向,我將非常感激。

回答

1

AfterBuild通常在項目包裝完成後調用。在它的打包階段之前,web.config轉換將發生在您的項目之前。

+0

因此,MSBuild *不會*使用項目的'.csproj'文件? – 5arx

+1

當然。 Visual Studio C#項目文件是MSBuild文件,而通過命令行MSBuild和TFS調用的項目可能與Visual-Studio內部版本具有稍微不同的環境上下文,但它們是相同的。 – bojolais

1

.csproj文件是MSBuild文件。只要符合條件,您在.csproj中定製的任何東西都將由MSBuild提取。

您可以增加MSBuild logging冗長度來分析構建內部。

1

web.config的轉換由VS的web發佈任務完成,特別是Package目標。你的.csproj應該有一個Microsoft.Web.Publishing.targets的導入,它可以定義TransformXml任務,並且像msbuild會調用的[Pre | Post] TransformWebConfig這樣的目標很少。