【问题标题】:Mixing .NET Core and Framework in same solution - System.Data.Entity Issue在同一解决方案中混合 .NET Core 和 Framework - System.Data.Entity 问题
【发布时间】:2021-04-24 17:45:42
【问题描述】:

我正在通过 .NET Core WebAPI 为我们的旧版 .NET 4 Framework 库提供一个新条目。 不幸的是,我在 webapi 项目(net core)中遇到了运行时(加载依赖容器时)的问题:

FileNotFoundException: Could not load file or assembly 'System.Data.Entity'

我尝试在 webapi 项目中显式添加对 Entity 的引用,但随后出现 BadImageReferenceException,我知道该库在 net core 中已停用。

旧版 .NET 4 Framework 库广泛使用 EntityFramework (5.0.0),因此 System.Data.Entity 被大量使用。我尝试将这些库移植到 .netstandard,但需要进行大量代码更改。

我必须避免(大量)代码更改的任何选项,我可以在核心和支持库中使用闪亮的新 api 并保持不变?

【问题讨论】:

  • 您是否尝试直接从 asp.net 核心项目中引用您的旧代码?你在 asp.net core 项目中的目标框架是什么?
  • @PSGuy 我的目标是 .NET 5 或对 .NET Core 3.1 也很满意
  • 更新到 EF6,那个 EF 版本也可以在 .net core 上运行
  • @magicandre1981 谢谢你似乎成功了!前端现在成功运行,在依赖的遗留类库中进行了最少的重构。谢谢!
  • @Avais 好的,我将其发布为答案,以便you can accept it“关闭”问题。

标签: c# .net-core entity-framework-5 .net-framework-version .net-standard-2.0


【解决方案1】:

EF5 与 .Net Core 不兼容。在 .Net Core 上运行的唯一经典 EF 版本是 Entity Framework 6 since Version 6.3

  • 支持 .NET Core 3.0
    除了 .NET Framework 4.x 之外,EntityFramework 包现在还针对 .NET Standard 2.1。

所以请从EF5 to EF6 更新以解决您的问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-12-18
    • 2017-08-23
    • 1970-01-01
    • 1970-01-01
    • 2019-12-03
    • 2019-06-23
    • 1970-01-01
    相关资源
    最近更新 更多