ASP.NET Core - 资产文件没有 .NETCoreApp 3.1 的目标

AnK*_*ing 4 asp.net-core asp.net-core-3.0

我正在尝试编译我的应用程序以在 Core 3.0(不是 3.1)上运行

而且我能够在本地编译和运行良好,但是当我进行发布时,它给了我:

错误 NETSDK1005:资产文件“C:\dev...\project.assets.json”没有“.NETCoreApp,Version=v3.1”的目标。确保恢复已运行并且您已在项目的 TargetFrameworks 中包含“netcoreapp3.1”。

但我不想让它在 3.1 上运行,我需要 3.0(为了保持与其他项目的兼容性)

是否有可能找出导致它寻找 3.1 而不是 3.0 的原因?

小智 20

从 3.1 升级到 Net 6.0 后,我遇到了同样的问题,它会构建但不会发布。然后,我也将现有的发布配置文件更新为 Net 6.0,现在一切正常。

发布配置文件设置以进行更改

  • 通过额外的支持信息可以改进您的答案。请[编辑]添加更多详细信息,例如引文或文档,以便其他人可以确认您的答案是正确的。您可以[在帮助中心](/help/how-to-answer)找到有关如何写出好的答案的更多信息。 (2认同)

小智 9

对我来说最快的方法是删除资产文件并在 NuGet“包管理器控制台”中运行dotnet restore 命令,让一切顺利运行


小智 8

请检查您的构建配置

  • 它恰好是发布配置,但我必须手动更改发布配置文件,而不是在 UI 中更改它。因为 UI 显示了所有正确的值,尽管发布配置文件中的值不正确 (8认同)

Lui*_*lis 6

更新 nuget 版本为我解决了这个问题:

nuget update -self
Run Code Online (Sandbox Code Playgroud)

如果您希望在 Visual Studio 中更新 nuget 版本,只需按照以下步骤操作即可。


小智 5

  1. 所有 DLL更新到 3.0 版

  2. 检查您的构建配置

  3. 编辑 FolderProfile.pubxml并更改<TargetFramework>netcoreapp3.1</TargetFramework><TargetFramework>netcoreapp3.0</TargetFramework>