【发布时间】:2020-09-14 21:56:16
【问题描述】:
我希望我们的开发人员为我们的所有项目(如果可能)使用一个版本的 Visual Studio - 为此,我要求他们将 VS2019 用于最初在 VS2010 中创建然后迁移的一些项目到VS2013。
在 VS2019 中运行这些旧的 webforms 应用程序之一时发生了运行时行为变化。我不确定为什么它会有所不同,因为所使用的 dll 是相同的,并且编译的 IL 对于所讨论的方法是相同的,但目前我并不真正关心“修复”它,因为它需要编写代码更改和回归测试整个应用程序;一条我暂时想避开的路。
我想做的是确保使用指定的工具构建 VS2019,以便我们保留旧的行为。项目文件引用了工具版本 12(未安装 VS2013),但是当 Visual Studio 构建时,我在 MSBuild 输出中看到以下内容:
项目文件包含 ToolsVersion="12.0"。此工具集可能未知或缺失,在这种情况下,您可以通过安装适当版本的 MSBuild 来解决此问题,或者出于政策原因,该构建可能已被强制使用特定的 ToolsVersion。将项目视为具有 ToolsVersion="Current"。更多信息请见http://go.microsoft.com/fwlink/?LinkId=293424。
我安装了 MSBuild Tools 2013,但在重新启动之前或之后都没有解决问题。我也尝试使用工具版本 15 并得到相同的错误(安装了 VS2017)。
来自 VS2019 开发命令提示符的 MSBuild 有效,但我必须将 14.0 Web 应用程序目标复制到名为“16.0”的新文件夹中。如果不进行更多在线搜索,我不确定为什么有 14.0 文件夹但没有 12.0 或 15.0 文件夹。
这是愚蠢的差事,还是我错过了一些简单的事情?
【问题讨论】:
-
,我建议你可以试试我的解决方案。
标签: visual-studio msbuild