ADO.NET Entity Framework 是微软以 ADO.NET 为基础所发展出来的对象关系对应 (O/R Mapping) 解决方案,不仅支持SQL Server,还支持MySQL、Oracle等数据库。

接下来给大家讲解EF6+MYSQL具体的配置流程,以及配置过程中一些常见错误的解决方法。

开发环境:Win10 + VS2015

数据库:MySQL 5.7.11


一、下载并安装插件

  • MySQL-Connector-net-6.9.9 下载
  • MySQL for Visual Studio 下载

注意:安装MySQL for Visual Studio需下载MySQL Installer,然后在安装过程中选择MySQL for Visual Studio。


二、创建新的ASP.NET MVC空白项目

1.创建项目

2.采用Nuget方式安装MySql.Data.Entity

安装完成后会多出4项引用

3.添加 ADO.NET 实体数据模型

4.选择“来自数据库的 EF 设计器”,我这里已建好数据库,所以选择了DBFirst模式

5.新建连接,选择“更改(C)...”

6.选择“MySQL DataBase”,填写连接信息

7.选择需要的表,点击“完成”,然后就大功告成了!


三、使用空EF设计器生成数据库

1.步骤与上面类似,这里选择“空EF设计器模型”

2.添加实体

3.创建一个新MySQL的数据库

4.更改模型属性,选择“SSDLTomYsql.tt(VS)”DDL生成模板(这一步很重要,否则后面会出错)

5.右击模型设计器,选择“根据模型生成数据库(G)...”

6.填写数据库连接信息,这里选择刚刚创建的“test2”数据库

7.生成数据库脚本

8.将脚本全部复制到数据库中执行

9.大功告成,数据库成功创建!


四、配置过程中常见错误及解决方案

1.无法使用实体框架

解决方案:采用NuGet方式安装MySql.Data.Entity,参见第二节第4步

2.未修改DDL生成模板

解决方案:修改DDL生成模板,参见第三节第4步

3.生成模型时错误

解决方案:在数据库中执行以下命令:

use <<数据库名称>>;
set global optimizer_switch='derived_merge=OFF';

五、完成

现在你就可以跟使用SQL Server一样使用MySQL了,虽然过程有点复杂,但还是很值得的。

以上内容是本人结合一些网上教程和自己的配置经验,总结出来的成果,亲测可用。许多人被EF6+MySQL的配置折腾了很久,希望这篇文章可以给各位提供一点帮助,有不足之处欢迎留言!

本文为作者kMacro原创,转载请注明来源:http://www.jianshu.com/p/910a4175bf7b。

VS2015 + EF6连接MYSQL的更多相关文章

  1. VS2015 +EF6 连接MYSQL数据库生成实体

      VS2015 +EF6 连接MYSQL数据库生成实体   已安装软件:VS2015                       XAMPP Control Panel(Mysql服务器)      ...

  2. VS2015如何连接mySQL数据库

    mySQL数据库           如题,今天给大家简单演示一下VS2015如何连接mySQL数据库.       首先呢,大家需要安装vs2015和mySQL这两个软件,我还安装了一个辅助软件SQ ...

  3. Vs2013 使用EF6 连接mysql数据库

    最近在使用MySQL数据库,在使用EF框架连接MySQL数据库时发现了一个问题,使用DB First创建实体对象的时候会出现如下图的错误:您的项目引用了最新版实体框架….. (如下图)或者会出现新建实 ...

  4. VS2017 + EF6连接MySql

    VS2017 + EF6连接MySql   原地址:https://blog.csdn.net/mzhifa/article/details/80999105 VS2017 + EF6连接MySql ...

  5. 在Visual studio 2017中使用EF6连接MySQL

    在Visual studio 2017中使用EF6连接Mysql ADO.NET Entity Framework 是微软以 ADO.NET 为基础所发展出来的对象关系对应 (O/R Mapping) ...

  6. 【C++】VS2015/VS2017连接Mysql数据库教程

    要给C++程序连接MySQL数据库,分别需要: 安装MySQL Server 下载MySQL Connector/C++ 在IDE中配置依赖 然后就可以在代码中调用API,来连接以及操作数据库. 一. ...

  7. 使用VS2013 + EF6 连接Mysql数据库

    使用VS2013 + EF6 + .NET4.5 连接Mysql数据库 1.安装插件 在使用Visual Studio 2013添加ADO.NET实体数据模型新建连接时,默认是没有Mysql选项的.此 ...

  8. VS2015如何连接mySQL数据库图文

    1.新建一个工程名叫mysql,编程环境选择c#,然后选择windows窗体应用程序,新建一个窗体用于显示查询到sql数据库的数据集 2.从工具箱向form1窗体上拖一个按钮和datagridview ...

  9. VS2013使用EF6连接MySql

    前提:a.安装MySql的VS插件(版本请下载最新版) 我用的是:mysql-for-visualstudio-1.1.4 b.安装用于.net连接程序  mysql-connector-net-6. ...

随机推荐

  1. Django 学习笔记(五)模板标签

    关于Django模板标签官方网址https://docs.djangoproject.com/en/1.11/ref/templates/builtins/ 1.IF标签 Hello World/vi ...

  2. Redis在电商中的实际应用-Java

    示例代码用Jedis编写. 1. 各种计数,商品维度计数和用户维度计数 说起电商,肯定离不开商品,而附带商品有各种计数(喜欢数,评论数,鉴定数,浏览数,etc),Redis的命令都是原子性的,你可以轻 ...

  3. 纹理混合遇到的问题 pre-multiplying OpenGL Android iOS

    纹理混合遇到的问题 pre-multiplying OpenGL Android iOS Alpha-blending pre-multiplying of texture OpenGL Androi ...

  4. Java温故而知新-插入排序

    插入排序 插入排序的基本思想是将待排序的元素依次插入序列合适的位置,然后将这个位置后面的元素依次向后移动一位 位置1 2 3 4 5 6 序列5 4 2 1 8 3 设第1位为最初始的基础元素,也就是 ...

  5. 手把手封装数据层之DataUtil数据库操作的封装

    上一篇我们写完了数据库连接的封装 没有看的请移步上一篇关于数据库连接的内容 这次我们讲数据库操作的封装.数据库的操作就是增删改查:心再大一点就可以直接分为查询和其他. 因为查询是有返回对象的,而其他都 ...

  6. java-生产者消费者模式

    经常会有公司叫我们手撕代码,比如网易,阿里,那我们是不是该掌握下呢.下面这段代码来自<现代操作系统>进程与线程P49页. public class ProducerConsumer { p ...

  7. [C#] 如何截取完整的网页图片

    前言 有时候浏览到非常有用的网页时,我们会选择将它加入到收藏夹中,但是网站一旦过期,以后就看不到这个网页了.当然也可以将网页打印成PDF文档保存.最新的Windows 10中的Edge浏览器支持将网页 ...

  8. 移动端iOS阻止橡皮筋效果

    一.遇到的问题 移动端开发中,iOS的微信浏览器也好.Safari也好在浏览网页的时候会出现橡皮筋效果.就是当页面拉到尽头的时候还能再继续拉动,露出浏览器的底色,松手会回弹回去. 微信浏览器: Saf ...

  9. pythonl练习

    练习:用户输入姓名.年龄.工作.爱好 ,然后打印成以下格式 ------------ info of Egon ----------- Name : Egon Age : 22 Sex : male ...

  10. java并发之原子性

    详见:http://blog.yemou.net/article/query/info/tytfjhfascvhzxcytp17 1.原子性操作: 不能被线程调度机制中断的操作:--对原子性变量的赋值 ...