在Visual studio 2017中使用EF6连接MySQL

时间:2023-03-08 23:31:39
在Visual studio 2017中使用EF6连接MySQL

在Visual studio 2017中使用EF6连接Mysql

ADO.NET Entity Framework 是微软以 ADO.NET 为基础所发展出来的对象关系对应 (O/R Mapping) 解决方案,不仅支持SQL Server,还支持MySQL、Oracle等数据库。 在本文中使用 Entity Framework 6 框架,来映射MySQL数据实体。

一、在VS2017中,通过Nuget安装插件

1. EntityFramework 6.2.0

2. Mysql.data.entity 6.10.8, 安装它的同时,也会自动安装依赖库Mysql.data 6.10.8

二、安装Mysql  工具

1. Mysql server 5.5 数据库或更高版本

2. Mysql connector/net 6.10.8

3. Mysql for visual studio 1.2.8

三、 在Visual studio 添加 ADO.NET Entity Data model, 去连接Mysql数据库。

但是在步骤三中,出现过连接实体框架不兼容的问题, 如下图所示:

在Visual studio 2017中使用EF6连接MySQL

这个问题困扰了我一天的时间,后来才找到问题所在。原来我刚开始安装的Mysql.data.entity.dll 6.8.8 的版本与 Mysql connector/net 6.10.8 版本不一致所引起问题重新安装Mysql.data.entity 6.10.8 使得它与 Connector 版本一致就行了。

可以在Nuget中,手动安装 mysql.data.entity 指定版本。方法如下:

1. 打开Nuget命令行, VS2017 ->Tools -> Nuget Package Manager -> Package Manager Console

2. 输入命令行, install-package mysql.data.entity -version 6.10.8

补充:

假如安装最新版 Mysql connector/net v8.0.16,与其对应的Mysql.data.entity 库则变为Mysql.data.Entityframework v8.0.16.