C# 在.net项目中更改MSBuild工具集(ToolsVersion)有哪些缺点?
我知道MSBuild Toolset(ToolsVersion)是什么以及如何工作的,但不了解如果从项目文件或CLI更改/使用较低或较高的ToolVersion,会对我们的项目产生什么影响。C# 在.net项目中更改MSBuild工具集(ToolsVersion)有哪些缺点?,c#,compiler-errors,msbuild,visual-studio-2019,devtoolset,C#,Compiler Errors,Msbuild,Visual Studio 2019,Devtoolset,我知道MSBuild Toolset(ToolsVersion)是什么以及如何工作的,但不了解如果从项目文件或CLI更改/使用较低或较高的ToolVersion,会对我们的项目产生什么影响。 需要知道正反两方面的信息请。。。 更改MSBuild工具集(ToolsVersion)有哪些缺点 在我们的.net项目中 据我所知,ToolsVersion指定了特定版本的构建机制,实际上,这意味着使用不同版本的MSBuild构建项目。看 例如: VS2019(MSBuild 16.0):ToolsVe
需要知道正反两方面的信息请。。。
更改MSBuild工具集(ToolsVersion)有哪些缺点 在我们的.net项目中 据我所知,
ToolsVersion
指定了特定版本的构建机制,实际上,这意味着使用不同版本的MSBuild构建项目。看
例如:
VS2019(MSBuild 16.0):ToolsVersion=Current
,VS2017(MSBuild 15.0):ToolsVersion=15.0
,VS2015(MSBuild 14.0):ToolsVersion=14.0
,VS2013:ToolsVersion=12.0
但是,每个新版本的MSBuild都有一些新功能和一些特殊任务,您可以在proj
文件中使用。因此,MSBuild支持向下兼容,而更高版本的MSBuild支持编译使用较低版本VS创建的项目,以及以前较低版本的新功能
例如,如果您在VS2015中创建一个新项目,您可以使用工具版本14.0
、15.0
和Current
,而不会出现任何错误
如果使用较低的ToolsVersion构建项目,则会出现一些错误,如找不到程序集引用xxxxxxx
或缺少DLL方法
因此,我们建议您使用高于当前项目版本的工具版本(MSBuild),而不是低于当前项目版本的MSBuild。如果您当前的项目没有任何特殊的版本方法或功能,并且使用较低版本没有问题,但通常不建议这样做。并使用最新版本的MSBuild来构建您的项目,它可能会有性能优化和改进
希望它能对您有所帮助。谢谢您的帮助并被接受为答案。谢谢。