旧的 .NET Core 项目重新打包出现提示版本不对问题

错误提示

当电脑更新 VS2017 版本后,如果同时有新的 .NET Core SDK 更新,打开旧的项目重新打包,可能会报这样的错误

NETSDK1061: 项目是使用 Microsoft.NETCore.App 版本 2.1.3 还原的, 但使用当前设置, 将改用版本 2.1.3-servicing-26724-03。要解决此问题, 请确保将相同的设置用于还原和后续操作 (如生成或发布)。通常, 如果 RuntimeIdentifier 属性是在生成或发布过程中设置的, 而不是在还原过程中进行的, 则会发生此问题。有关详细信息, 请参阅 https://aka.ms/dotnet-runtime-patch-selection。

3 种解决方法

  • 右键项目,选择编辑 csproj 文件,在文件中 PropertyGroup 节点添加

     <TargetLatestRuntimePatch>false</TargetLatestRuntimePatch>

  • 在官网下对应最新的 SDK 重新安装

  • 在项目目录下添加 nuget.config 文件,内容为

<?xml version="1.0" encoding="utf-8"?><configuration> <packageSources> <clear /> <add key="nuget" value="https://api.nuget.org/v3/index.json" /> <add key="dotnet-core" value="https://dotnet.myget.org/F/dotnet-core/api/v3/index.json" /> <add key="dotnet-core-svc" value="https://dotnet.myget.org/F/dotnet-core-svc/api/v3/index.json" /> <add key="aspnetcore-dev" value="https://dotnet.myget.org/F/aspnetcore-dev/api/v3/index.json" /> </packageSources> </configuration>

相关文章