找不到实体框架 6 的兼容提供程序

Posted

技术标签:

【中文标题】找不到实体框架 6 的兼容提供程序【英文标题】:Could not find a compatible provider for entity framework 6 【发布时间】:2014-07-12 06:04:32 【问题描述】:

我在使用 mysql 5.6.17 的 Visual Studio 2013 Ultimate 中有以下项目

    新项目:ASP.net webforms 应用程序 NuGet EntityFramework NuGet MySql.ConnectorNET.Entity 添加 ADO.NET 实体数据模型 数据库中的代码优先 选择数据连接 选择您的版本(Entity Framework 6.0 被选中并显示为灰色)。

这给出了以下错误消息:

您的项目引用了最新版本的实体框架;但是无法为您的数据连接找到与此版本兼容的实体框架数据库提供程序。

是什么原因以及如何解决此错误?

【问题讨论】:

您是否安装了latest version of the MySQL connector?也可以安装MySQL.Datavia nuget。 ***.com/questions/21206184/… 答案就在这里。 【参考方案1】:

安装最新版本的 MySql 或 实体框架的低版本 安装包EntityFramework -Version 5.0.0

【讨论】:

先决条件是数据库中的 Code First。数据库中的 Code First 要求 EF 6,不允许 EF 5。它要求 EF 6。但是当我要求 EF 6 时,我收到此错误。 您几乎可以通过更改问题以使其更容易回答任何问题。降级您的先决条件应该是最后的手段。幸运的是,我坚持了先决条件,并在下面找到了答案。

以上是关于找不到实体框架 6 的兼容提供程序的主要内容,如果未能解决你的问题,请参考以下文章

实体框架“找不到查询模式的实现”

找不到具有不变名称“System.Data.SqlClient”的 ADO.NET 提供程序的实体框架提供程序。

找不到具有不变名称“System.Data.SqlClient”的 ADO.NET 提供程序的实体框架提供程序。

找不到具有不变名称“System.Data.SqlClient”的 ADO.NET 提供程序的实体框架提供程序

ADO.NET 实体框架 - 带有实体框架 6 的 Oracle

VS2013与MySql建立连接;您的项目引用了最新实体框架;但是,找不到数据链接所需的与版本兼容的实体框架数据库 EF6使用Mysql的技巧