【问题标题】:EF Core 3.0 preview 7 cannot install for .NET Framework 4.8 project via VS2019 nugetEF Core 3.0 preview 7 无法通过 VS2019 nuget 为 .NET Framework 4.8 项目安装
【发布时间】:2019-08-08 17:47:43
【问题描述】:

我有一个 .NET Framework 4.8 VS2019 解决方案,目前针对 EF Core 2.0。我试图通过“管理 Nuget 包”将项目升级到 EF Core 3.0 预览版 7,并得到如下错误:Package Microsoft.EntityFrameworkCore.SqlServer 3.0.0-preview7.19362.6 is not compatible with net48 (.NETFramework,Version= v4.8)/赢。包 Microsoft.EntityFrameworkCore.SqlServer 3.0.0-preview7.19362.6 支持:netstandard2.1 (.NETStandard,Version=v2.1)

我已验证预览版 6 安装正常,因为它以 .NET Framework 4.8 支持的 .NET Standard 2.0 为目标,这很有意义。

不幸的是,从 .NET Framework => .NET Core 升级我的解决方案文件目前不可行,因为 .NET Core 不支持旧的 WCF/.NET-remoting(并且不会来自我的阅读)。同样,听起来 .NET Framework 永远不会支持 .NET Standard 2.1。这是否意味着如果我想升级到 .NET Core 3.0 预览版 6,我必须完全放弃使用 EF Core?

【问题讨论】:

  • 不幸的是,这是微软“开源”的方向。所有由于遗留原因无法切换到 .Net Core 的人都被搞砸了——没有 C#8+,没有 EF Core 3.0+ 等等。:-(
  • EF Core 3.0 以 .NET Standard 2.1 为目标,以启用 async foreach 和可为空的引用类型。 .NET Framework will never be updated to support .NET Standard 2.1 or higher
  • 感谢大家的快速回复。我的解决方案将改为移植到 Entity Framework,直到 .NET Core 支持 WCF,或者直到我的团队有时间移植 WCF => gRpc 并从 .NET Framework => .NET Core 升级。
  • @bricelam 恕我直言,我们知道 .NET Framework 不会更新。但是,EF Core documentation 表示 “EF Core 是一个跨平台产品,可以在 .NET Core 或 .NET Framework. 上运行”。在Breaking Changes 中没有一个词表明你们将 .NET Standard 2.1,从而有效地取消对.NET Framework 的支持。恕我直言,这应该是列表顶部的粗体
  • @IvanStoev 感谢您的反馈!我会尽快解决这个问题

标签: .net-framework-version ef-core-3.0


【解决方案1】:

正如微软在这篇文章中提到的那样

.NET implementations supported by EF Core

EF Core 1.x 2.x 3.x

.NET 标准 1.3 2.0 2.1

.NET Core 1.0 2.0 3.0

.NET Framework(1) 4.5.1 4.7.2(不支持)

EF 核心现在使用此处提到的 .Net Standard 2.1 EF Core 3.0 targets .NET Standard 2.1 rather than .NET Standard 2.0

但是当微软在这里宣布 .Net Standard 2.1 时

Announcing .NET Standard 2.1 它表示 .Net Framework 将保留在 .net Standard 2 上

鉴于 .NET Standard 2.1 中的许多 API 添加需要运行时 为了有意义的更改,.NET Framework 4.8 将继续使用 .NET Standard 2.0 而不是实现 .NET Standard 2.1。 .NET 核心 3.0 以及即将推出的 Xamarin、Mono 和 Unity 版本将进行更新以实现 .NET Standard 2.1。

那么您可能永远无法在 .net 框架上获得 ef core 3.x 对不起

【讨论】:

    猜你喜欢
    • 2020-01-10
    • 1970-01-01
    • 2020-02-29
    • 1970-01-01
    • 2021-10-02
    • 2017-12-15
    • 2023-03-08
    • 1970-01-01
    • 2020-01-19
    相关资源
    最近更新 更多