从.NET Core 2.1迁移到.NET Core 3.1后,发布出现问题

Mor*_*ari 8 c# publish nuget-package asp.net-core-3.1

将我的项目从 .NET Core 2.1 迁移到 .NET Core 3.1 后,一切正常,但在发布项目时,出现此错误:

System.Runtime.CompilerServices.Unsafe 不支持 netcoreapp3.1。考虑将 TargetFramework 更新到 netcoreapp3.1 或更高版本。

Lop*_*ded 8

先试试这个!

对于任何看似无缘无故突然遇到此错误的人来说,该错误消息可能是转移注意力的信息。您应该先尝试删除所有binobj文件夹,然后再进行其他操作。

  1. 对于解决方案中的每个项目,找到并删除 obj 和 bin 文件夹(不用担心,它们会自动重新生成)。
  2. 右键单击该解决方案,然后单击“清理解决方案”
  3. 右键单击您的启动项目,然后单击“重建”

对我来说,问题是在尝试发布时发生的,尽管 (a) 没有发生任何更改,(b) 它在前一天有效,并且 (c) 我实际上使用的是 .NET 6.0!

在通过任何推荐的解决方案解决问题失败后,我继续并实际上从包文件夹中的 .targets 文件中删除了警告System.Runtime.CompilerServices.Unsafe(即,我抑制了错误),但随后列表中的下一个包开始抱怨同样的问题事物。

解决方案

删除 bin/obj 文件夹并清理解决方案立即解决了问题。


小智 -1

@@Morteza 从 NuGet 将 System.Runtime.CompilerServices.Unsafe 版本 6.0.0 安装到您的项目中。

Install-Package System.Runtime.CompilerServices.Unsafe -Version 6.0.0
Run Code Online (Sandbox Code Playgroud)