Visual studio 2010 在解决方案文件上调用TransformWebConfig

Visual studio 2010 在解决方案文件上调用TransformWebConfig,visual-studio-2010,msbuild,Visual Studio 2010,Msbuild,我有一个包含多个项目的解决方案,其中一个项目是web应用程序,我希望在使用MSBuild构建解决方案时能够使用web.release.config转换web.config。 当我打电话时 MSBuild“WebProject.csproj”/t:TransformWebConfig /配置=发布 在web项目上,我将转换后的web.config输出获取到…\obj\Release\TransformWebConfig\transformed\web.config 但是当我试着打电话的时候 MSB

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

MSBuild“WebProject.csproj”/t:TransformWebConfig /配置=发布

在web项目上,我将转换后的web.config输出获取到…\obj\Release\TransformWebConfig\transformed\web.config

但是当我试着打电话的时候

MSBuild“Solution.sln”/t:TransformWebConfig /配置=发布


我得到一个错误,“TransformWebConfig在项目中不存在”。如果可能的话,是否有一种方法可以让它工作,这样它将输出一个转换后的web.config,否则将忽略命令的TransformWebConfig部分?

最简单的方法似乎是将web projects.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