【问题标题】:How do I reference Entity Framework 6 from a .NET core class library in RC2?如何从 RC2 中的 .NET 核心类库中引用 Entity Framework 6?
【发布时间】:2016-05-27 14:05:25
【问题描述】:

我有一个 .NET 核心类库,我想从中引用 Entity Framework 6.1.3。这是我的 project.json:

{
  "version": "1.0.0-*",

  "dependencies": {
    "NETStandard.Library": "1.5.0-rc2-24027",
    "EntityFramework": "6.1.3" 
  },

  "frameworks": {
    "netstandard1.5": {
      "imports": "dnxcore50"
    }
  }
}

我收到此编译错误:

依赖EntityFramework 6.1.3 不支持框架 .NET 标准,版本=v1.5。

所以我尝试将 NetStandard.Library 依赖项切换到 Microsoft.NETCore.App,如下所示:

{
  "version": "1.0.0-*",

  "dependencies": {
    "Microsoft.NETCore.App": {
    "version": "1.0.0-rc2-3002702",
    "type": "platform"
    },
    "EntityFramework": "6.1.3"
  },

  "frameworks": {
    "netcoreapp1.0": {
      "imports": [
        "dotnet5.6",
        "dnxcore50",
        "portable-net45+win8"
      ]
    }
  }
}

我收到了与之前一样的编译错误:

依赖EntityFramework 6.1.3 不支持框架 .NETCoreApp,版本=v1.0

基本上,这让我无法从 .NET 核心引用实体框架 6.1.3。

我可以从 .NET 核心类库中引用 EF Core,但这不是我现在想做的事情。

有解决办法吗?

【问题讨论】:

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


【解决方案1】:

Entity Framework 6.1.3 不支持 .NET Core。这是创建 Entity Framework Core 的部分动机。 EF 6 与 .NET Framework 中的 API 有着深厚的联系,而这些 API 可能无法移植到 .NET Core 中。

您仍然可以将 EF6 与“project.json”项目一起使用,但您需要以 .NET Framework 而不是 .NET Core 为目标。

{
    "dependencies": {
        "EntityFramework": "6.1.3"
    },
    "frameworks": {
        "net461": { }
    }
}

【讨论】:

  • 谢谢!我会接受这个答案。还有一个问题。 “依赖项”下的“NETStandard.Library”:“1.5.0-rc2-24027”是什么意思?以及它与“Microsoft.NETCore.App”有何不同?
  • @SirG NETStandard.Library 用于(便携式)库,Microsoft.NETCore.App 用于(.Net Core)应用程序。
猜你喜欢
  • 2023-01-13
  • 1970-01-01
  • 2021-06-24
  • 1970-01-01
  • 1970-01-01
  • 2017-05-28
  • 2021-04-17
  • 2020-03-25
  • 1970-01-01
相关资源
最近更新 更多