在解决方案文件上调用TransformWebConfig

时间:2012-08-07 11:26:19

标签: visual-studio-2010 msbuild

我有一个包含多个项目的解决方案,其中一个项目是一个Web应用程序,我希望能够在使用MSBuild构建解决方案时使用web.release.config转换web.config。 当我打电话

  

MSBuild“WebProject.csproj”/ t:TransformWebConfig   / P:配置=释放

在web项目上的

我将转换后的web.config输出转换为... \ _对象\ Release \ TransformWebConfig \ transformed \ Web.config

但是当我试着打电话时

  

MSBuild“Solution.sln”/ t:TransformWebConfig   / P:配置=释放

我收到错误“项目中不存在TransformWebConfig”。你有没有让它工作,所以它会输出一个转换后的web.config,如果可能的话,忽略命令的TransformWebConfig部分呢?

1 个答案:

答案 0 :(得分:5)

最简单的方法是将Web项目.csproj文件更改为

<Project ToolsVersion="4.0" DefaultTargets="BuildWithConfig" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">

然后添加新目标

<Target Name="BuildWithConfig">
    <CallTarget Targets="Build"/>
    <CallTarget Targets="TransformWebConfig"/>
</Target>

然后运行

  

MSBuild“Solution.sln”/ p:Configuration = Release

文件将输出到... \ WebProject \ _ obj \ Release \ TransformWebConfig \ transformed