EDMX .NET 4.5 to 4.0?

本文关键字:to NET EDMX | 更新日期: 2023-09-27 18:30:46

我们使用的是实体框架,当我们的项目设置为生成 .NET 4.5 时,我们创建了 EDMX。现在我们想切换到 .NET 4.0,但当我们这样做时,我们会收到 EDMX 文件的编译错误。

它指出以下错误:

Error 10027: The XML namespace for the conceptual model's schema element is not supported on this project's target framework version.

除了重新创建EDMX文件之外,还有其他解决方案吗?

EDMX .NET 4.5 to 4.0?

假设不使用 .NET Framework 4.5 附带的功能(枚举、空间类型、具有多个结果集的存储过程),则可以执行以下操作(请务必备份文件以防万一):

  • 创建面向 .NET Framework 4.5 的新控制台应用
  • 将 edmx 文件添加到项目中
  • 将项目重新定位到面向 .NET Framework 4(转到项目属性,更改目标框架版本)

这应该会导致将 edmx 降级到 v2。

或者,可以手动将 xml 命名空间和版本更改为 v2。可以在此处找到要用于每个版本的项目的命名空间:

  • 电火花
  • 中科多利
  • 固态硬盘
  • MSL

编辑请注意,使用 EF6/EF6.x,您可以在 .NET Framework 4 上使用 Edmx v3,从而获得以前仅在 .NET Framework 4.5 上可用的所有优点(如枚举)。

对于它的价值,我将目标框架切换回 4.5,重新编译解决方案,遇到一堆错误,将其切换回 4.0 并得到消息:

"成功为新的目标框架重建了 edmx"

从那里我能够重新编译而没有任何命名空间错误耸耸肩

注意对于VS 2012上的那些,需要单独安装 如果要在 EDMX v3 上保留 .Net 4 项目。实体框架 6 Visual Studio 2012 的工具 – Jeff 1 月 27 日 2:09

Pawel回答的上述评论解决了我的问题。 我正在将其复制到自己的答案中,以便人们可以找到它。