【问题标题】:I need help installing EFCore 3.0 on .net framework 4.8我需要帮助在 .net 框架 4.8 上安装 EFCore 3.0
【发布时间】:2020-01-30 05:23:44
【问题描述】:

每当我想通过我的 NetFramework 4.8 项目上的 NuGet 将我的 EFCore 引用更新到版本 3 时,我都会收到此错误。

我确认我的机器上安装了 netcore 3.0 SDK。

Could not install package 'Microsoft.EntityFrameworkCore 3.0.0'. You are trying to install this package into a project that targets '.NETFramework,Version=v4.8', but the package does not contain any assembly references or content files that are compatible with that framework. For more information, contact the package author.              

【问题讨论】:

  • .NET Framework 和 .NET Core 是两个不同的东西。您需要常规的实体框架。
  • @Eraph 我可以在 .net 框架 4.8 上使用 efcore 3 吗?我当前的代码使用 efcore 2.2
  • 不,EF Core 面向 .NET Standard 2.1,它不(也永远不会)与 .NET Framework 4.X 兼容。

标签: .net entity-framework entity-framework-core


【解决方案1】:

这是 EF Core 3.0 中的重大突破性变化。但已在 EF Core 3.1 中修复。

从 3.0 开始,EF Core 面向 .NET Standard 2.1 并将在 支持此标准的所有平台。这不包括 .NET 框架。

Breaking changes included in EF Core 3.0

这里是跟踪问题,有很多关于此更改的背景:Target .NET Standard 2.1

未来版本的 .NET Framework 不会支持 .NET Standard 2.1。参见例如:

鉴于 .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。

Announcing .NET Standard 2.1.

所以你必须跳转到 EF Core 3.1 和至少 .NET Framework。 4.7.2.

[更新]

EF Core 3.1 重新引入了对 .NET Standard 2.0 的支持,而不是 与 EF Core 3.0 一样,需要 .NET Standard 2.1。这 意味着 EF Core 3.1 将在支持 标准。

.NET Framework 4.7.2 及更高版本完全支持 .NET Standard 2.0,EF Core 3.1 也是如此。有关支持矩阵,请参阅 herehttps://devblogs.microsoft.com/dotnet/announcing-entity-framework-core-3-1-and-entity-framework-6-4/

【讨论】:

  • 你在搜索了一天半之后才救了我!在 .net 核心库中使用 ef 库时遇到了一些问题。但是,我所要做的就是在我的 .net 4.8 访问库中使用 ef core 2.6,因为 ef core 3.1 不起作用
  • 嗯,我尝试在我的 .net 4.8 库上使用 ef core 3.1,但它不起作用。我需要将我的 .net 4.8 库更改为 .net 标准吗?
  • 我刚刚尝试过,但确实遇到了绑定错误,但使用此处的提示解决了这个问题:stackoverflow.com/questions/43995432/…
  • 您可能已经在 EF Core 2 中获得了客户端评估。无论如何,修复是相同的。确保适当地确定 DbContext 的范围,而不是在线程之间共享,并在对 DbContext 开始新查询之前完全获取每个查询结果。
  • 是的,我认为这就是问题所在。但是,它如何与 await async 一起工作?我使用的每个调用都是异步等待。我正在依赖注入上下文,该上下文已添加到 startup.cs。顺便感谢您抽出宝贵时间回复!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-10-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-12-15
  • 2011-08-25
相关资源
最近更新 更多