连接到MySQL数据库时,实体框架的实体数据向导崩溃

Riv*_*ner 24 c# mysql entity-framework-6 visual-studio-2015

我正在尝试使用向导创建实体数据模型来对现有MySQL数据库进行反向工程.我进入向导的Choose Your Data Connection页面,选择现有的MySQL连接,然后单击Next,向导崩溃.具体来说,对话框只是消失,没有错误消息或任何跟踪.每一次.重新启动VS或Windows不执行任何操作.

我可以使用服务器资源管理器和相同的连接连接到数据库没有问题,所以我相信它不是一个连接问题.

这是在安装了所有更新的Visual Studio 2015中,用于Visual Studio的MySQL版本1.2.6,EF 6.1.3以及MySql.Data和MySql.Data.Entity.EF6版本6.8.3.0.它是一个针对.NET Framework 4.6.1的控制台应用程序.

谷歌还没有透露任何有用的信息.昨天的另一个问题是类似的,但是在不同的点崩溃并且用户无法使用服务器资源管理器进行连接.所以它似乎是一个不同的情况.

Windows日志中没有任何帮助.

我怎么解决这个问题?

Lar*_*ård 37

它是由版本不匹配引起的.

在我的系统上,我有MySQL Connector 6.9.6.在NuGet Package Manger控制台中发出命令:

Install-Package MySql.Data.Entity默认安装版本6.9.8.您的连接器必须与NuGet包的实际版本匹配.您可以从以下网址下载更新版本的连接器:https://www.mysql.com/products/connector/

在这里选择"用于MySQL的Ado.net驱动程序",并下载相应的版本(在本例中为6.9.8).重新打开Visual Studio,现在向导不会崩溃.无需重启.

  • 这个答案应该标记为正确的答案!谢谢! (2认同)
  • 如果您仍然遇到此问题,请在这里查看我的解决方案:)简短:请使用MySql.Data.EntityFramework,而不是Mysql.Data.Entity (2认同)

Mag*_*sen 12

我今天遇到这个问题,遵循这里的提示,它是"版本不匹配"是完全正确的!

我的重要"发现"是他们已经重命名了EF6所需的包装!正如这里的许多人发现的那样(例如"Nofi"),降级为匹配版本可以解决问题.但是,不要降级新版本,而是替换较新的MySql.Data.EntityFramework的Mysql.Data.Entity包!:)

short:使用MySql.Data.EntityFramework,而不是Mysql.Data.Entity