【问题标题】:Migrating to .NET 6.0 error on publish: Assets file doesn't have a target for 'net5.0'发布时迁移到 .NET 6.0 错误:资产文件没有“net5.0”的目标
【发布时间】:2021-10-09 13:54:10
【问题描述】:

我正在尝试从 .NET 5 迁移到 .NET 6。我已经安装了 VS 2022 Community Preview 和 Hosting Bundle...并更新了 NuGet 中的所有内容。该项目将毫无错误地构建,但是当我发布它时,我收到以下错误:

Assets file 'D:\Data\CADE.core\FileManager\FileManager\obj\project.assets.json' doesn't have a target for 'net5.0'. 
Ensure that restore has run and that you have included 'net5.0' in the TargetFrameworks for your project.

我不知道为什么它仍在寻找 .NET 5 也不知道如何修复这个错误。

【问题讨论】:

  • 可能只是删除您的binobj 文件夹
  • 都删除了,同样的错误。
  • 你能检查一下 .pubxml 文件吗?是否还有 .net5,id 是,然后更改为 .net6
  • LOL...我确实将生产和开发 .pubxml 文件从 5 更改为 6。现在它说的是同样的事情...除了将 'net5.0' 更改为 'net6.0 '。
  • 我也进行了手动 NuGet 还原,但这并没有改变错误。

标签: c# .net-6.0 visual-studio-2022


【解决方案1】:

在大家的帮助下,我找到了解决办法。我编辑了发布信息,Target Framework net6.0有一个红点。我单击下拉菜单,其中一个选项是“net6.0-windows”。我选择了它并正确发布。

【讨论】:

  • 您使用的是 v5.0.11 的 Hosting Bundle 吗?是否运行 net6.0 应用程序?
  • 对于我的项目,我根本没有在发布配置文件中指定目标框架,这在过去没有任何区别。 (TFM 在 csproj 文件中;为什么它也需要在发布配置文件中?)添加 TFM 解决了这个问题。
  • 对我来说和 Doug 一样 - 我必须将 TFM net6.0 添加到发布配置文件 (pubxml)
猜你喜欢
  • 2022-07-22
  • 1970-01-01
  • 2020-10-19
  • 2022-01-04
  • 2020-01-23
  • 2020-03-09
  • 1970-01-01
  • 2022-06-14
  • 1970-01-01
相关资源
最近更新 更多