MVC 基架不支持实体框架 6 或更高版本
本文关键字:高版本 版本 不支持 实体 框架 MVC | 更新日期: 2023-09-27 18:33:43
刚刚升级到实体框架 6 看看。我正在使用 MVC4。
但是,当我尝试从模型和上下文创建控制器时,我会收到此消息。
MVC 基架不支持实体框架 6 或更高版本
认为这可以使用一些扩展:)如上所述 ASP.NET MVC 4 基架不支持 EF6 或更高版本。这意味着必须安装与 MVC 4 兼容的旧 EF。为此:
- 打开程序包管理器控制台:
- 选择工具 -> 库包管理器 ->包管理器控制台
-
在程序包管理器控制台中,通过执行以下命令卸载当前 EF 程序包:
UnInstall-Package EntityFramework -Version <version number>
*其中
<version number>
是当前安装的 EF 的版本号。
*注意:若要了解安装的 EF 版本,请在程序包管理器控制台中运行以下命令:Get-Package EntityFramework
-
为了避免潜在的元数据问题,需要删除 Web.config 文件中的提供程序条目:
- 在项目目录中打开 Web.config 文件。
-
删除以下行:
<providers> <provider invariantName=System.Data.SqlClient type=System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer /> </providers>
-
现在,在包管理器控制台中执行以下命令以安装实体框架 5.0.0:
Install-Package EntityFramework -Version 5.0.0
经过更多的挖掘
ASP.NET MVC 4 基架不支持实体框架 6 或更高版本。对实体框架 6 基架的支持面向下一版本的 ASP.NET MVC。
所以看起来等到 MVC 5 正确发布
ASP.NET MVC 4 基架不支持实体框架 6 或更高版本。 对脚手架的支持将包含在 MVC5 中。 解决方法是将 EF5 用于基架,然后升级到 EF6。
http://support.microsoft.com/kb/2816241
我搭建 MVC 4 和 EF 6 的控制器和视图的解决方法:
- 使用现有或新的 MVC 5 项目并复制实体数据模型您想在 MVC 中创建基架4.
- 将实体数据模型添加到 MVC 5 DBContext
- 在 MVC 5 项目中创建基架控制器和视图这显然适用于 EF 6。
- 将生成的视图从 MVC 5 复制到旧的 MVC 4 项目
这是
在不想降级 EF 版本时生成基架的解决方案。
对我来说,这是开箱即用的