背景:
EF连接MySQL时报错,截图如下图所示:
网上翻阅了很多资料,感觉有一篇文章说的比较靠谱:点击阅读。解决问题的大致过程如下:
在尝试使用MySQL,ADO.NET(数据库优先)和EF6配置时报错。首先,我按照网上所描述安装了Connector / NET v6.8.X,但是还是不能解决。可以按如下步骤解决问题:
1、安装“MySQL for Visual Studio”v2.0.5 CTP。 点击这里下载 MySQL for Visual Stdio
2、然后安装和本机MySQL版本一致兼容的Connector / NET版本,和我本机兼容的是6.10.8。点击这里下载,但没有全部版本列表信息。(我是一开始已经装了EF并且随便装了一个版本Connector / NET,导致报错,报错信息中会指定需要哪个版本,然后再去下载)。
3、通过NuGet下载并安装“EntityFramework”
4、添加对C:\Program Files (x86)\MySQL\Connector.NET 6.9.10\Assemblies\v4.5\MySql.Data.dll
和的 引用C:\Program Files (x86)\MySQL\Connector.NET 6.9.10\Assemblies\v4.5\MySql.Data.Entity.EF6.dll
5、
在实体框架提供程序下的App.config中添加MySQL EF6提供程序信息,如下所示:
<entityFramework><providers><provider invariantName="MySql.Data.MySqlClient"type="MySql.Data.MySqlClient.MySqlProviderServices, MySql.Data.Entity.EF6" /></providers>
</entityFramework>
6、重新编译项目。
通过以上步骤应该基本能解决此问题了。