【发布时间】: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