【问题标题】:How to get a .NET core 3.1 Project work with .NET 5.0 project如何让 .NET core 3.1 项目与 .NET 5.0 项目一起使用
【发布时间】:2023-04-07 03:46:01
【问题描述】:

当 .NET 5.0 发布时,提到的功能之一是创建 .NET 5.0 组件的能力,它可以与 .NET 3.1 一起使用,因此您不必在不同版本之间使用 .net 标准。

好吧,我尝试将 .net 3.1 与 .net 5.0 一起使用,但我不断收到错误消息。为了使这些工作我们必须做一些特别的事情吗?我们公司有多个使用不同版本的 .NET 核心的应用程序。从 2.2、3.0、3.1 到 .net 5.0。我们想为一些可重用的组件创建一些 NuGet 包,但是试图弄清楚如何在这些应用程序中使用 .net 核心,我不想使用 .net 标准来创建它们。

有没有人遇到过这种情况?

【问题讨论】:

  • 如果您能告诉我们您有什么错误,那就太好了。你能把它们添加到问题中吗?

标签: asp.net-core-3.1 .net-5


【解决方案1】:

无法从低于 .net 5.0 的 .net 版本引用 .net 5.0 库/dll。 .net 标准 2.1 应用于不同版本的 .net core 和 .net 5.0 之间的兼容性。

另一方面 - 最好将所有 .net 核心项目更新到 5.0,假设这是可能的。 .net 核心版本

here

【讨论】:

    【解决方案2】:

    您没有提供错误,但尽管如此,可以说.NET 5 不确保向后兼容性。 Microsoft 提供有关兼容性和重大更改的信息here

    .NET 5 合并了.NET Framework.NET Core,结束了保留两者的负担;目的是还包括MonoXamarin (MAUI)。但是,它不能确保与以前的版本兼容。 This 是一篇关于该主题的好文章 - 不过,有些功能已延迟到 .NET 6

    因此,获得所需兼容性的最佳方法是使用.NET Standard,或者更好地将应用程序迁移到.NET 5,因为之前版本的支持即将结束。在我工作的团队中,我们进行了一些从 .NET Core 3.x.NET 5 的迁移,这非常简单。

    值得注意的是,.NET 5 不是 LTS。另一方面,.NET 6 是。有关 .NET 版本和支持政策的更多详细信息here

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-12-20
      • 1970-01-01
      • 2021-05-22
      • 2021-11-05
      • 2018-12-08
      • 1970-01-01
      相关资源
      最近更新 更多