在同一项目中定位 V4.7.2 和 netcoreapp3.1。值不在预期范围内

Target V4.7.2 and netcoreapp3.1 in same project. Value does not fall witnin the expected range

我希望我的 Framework 4.7.2 代码使用面向 netcoreapp3.1 的库 Nuget 指示该库已被引用,但我没有在引用列表中看到它。

我尝试编辑项目以更改

中的 TargetFrameworkVersion
<TargetFrameworkVersion>v4.7.2</TargetFrameworkVersion>

<TargetFrameworkVersion>v4.7.2;netcoreapp3.1</TargetFrameworkVersion>

但保存此更改会导致出现一条消息

我无法重新加载项目

我尝试链接到

<TargetFrameworkVersion>netcoreapp3.1;net472</TargetFrameworkVersion>

构建错误变为

Error       The expression "[Microsoft.Build.Utilities.ToolLocationHelper]::
GetPathToStandardLibraries(.NETFramework, netcoreapp3.1;net472, '', '', '', '')" 
cannot be evaluated. Input string was not in a correct format.              

我请相关 尝试解决此问题。

我想你在找 <TargetFrameworks>

所以在这种情况下:

<TargetFrameworks>netcoreapp3.1;net472</TargetFrameworks>

请注意,您需要一个 SDK 样式的 csproj。我假设你就是这种情况。如果没有,检查

另见 the article about <TargetFrameworkVersion>:

This article shows the old way to specify a target framework. SDK-style projects enable different TargetFrameworks like netstandard. For more info, see Target frameworks.