【发布时间】:2018-04-09 07:16:56
【问题描述】:
我有一个需要应用 web.config 转换的 TFS 构建。我使用以下 MSBuild 参数对其进行了配置:
/p:DeployOnBuild=true /p:DeployTarget=Package /p:OutDir=$(build.artifactstagingdirectory) /p:UseWPP_CopyWebApplication=true /p:PipelineDependsOnBuild=false
使用 Visual Studio 2015 运行该步骤时,构建按预期工作 - 我应用了转换并创建了包。
使用 Visual Studio 2017 运行该步骤时,不会应用任何转换,也不会创建任何包。
还有其他方法可以使用 VS2017 配置构建以便应用配置转换吗?
【问题讨论】:
-
你是用 VS 2017 编译时使用 SDK 构建还是使用旧式 csproj 文件?
-
我正在运行一个使用 VS2017 的 TFS 构建。反过来,它使用“C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\MSBuild\15.0\Bin\msbuild.exe”执行命令并传入解决方案路径、我的参数等。
-
我明白了,但是您是否将您的 csproj 文件更改为新样式的 MSBuild?
-
不,新样式是什么?只是澄清一下,这不是一个 .net 核心项目。这是一个包含几个 Web 应用程序和一个 Windows 服务的解决方案。
-
您仍然可以在 .net 项目中使用 SDK 样式构建,这就是我问的原因。看起来您没有将构建更改为使用类似
我比较每个版本的 MsBuild 的 Microsoft.Web.Publishing.Tasks.dll 库中的 TransformXml 任务。没有太大的不同表明任何剧烈的变化都会改变。你能分享你的csproj文件吗
标签: visual-studio-2017 tfsbuild