http://blog.csdn.net/kmguo/article/details/19650299

网上有很多关于用EntityFrame来连接Mysql数据库的教程,可是很多并不靠谱,转载的太多了。找了很久,总算是配置好了,现在分享一下。
 
一,安装:
    1、开发环境: VS2013与EF6
    2、Mysql数据库为:Mysql Server 6.0
    3、安装:Mysql for Visual Studio 1.1.1
    4、安装 Mysql Connector/Net 6.8.3 GA
            下载位置:http://dev.mysql.com/downloads/connector/net/
 
二,引用dll:
    1、采用Nuget安装EF6.0.2;
    2、采用Nuget安装MySql.Data.Entity.EF6
    注意:要采用Nuget进行安装,否则可能会缺少相应的dll或者是配置信息
三、配置 web.config或app.config
    1、将entitframework节点替代为:
 <entityFramework codeConfigurationType="MySql.Data.Entity.MySqlEFConfiguration, MySql.Data.Entity.EF6">
    <defaultConnectionFactory type="System.Data.Entity.Infrastructure.SqlConnectionFactory, EntityFramework"/>
    <providers>
      <provider invariantName="MySql.Data.MySqlClient" type="MySql.Data.MySqlClient.MySqlProviderServices, MySql.Data.Entity.EF6" />
      <provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" />
    </providers>
  </entityFramework>    
 
    2、添加 ConnectionString节点:
<connectionStrings>
    <add name="MyContext" connectionString="Data Source=localhost;port=3306;Initial Catalog=数据库名称;user id=Mysql的登录用户名;password=Mysql server密码;" providerName="MySql.Data.MySqlClient"/>
  </connectionStrings>
 
四、测试C#代码
  1. using System.Data.Entity;
  2. namespace StudyEF
  3. {
  4. public class MyContext : DbContext
  5. {
  6. public MyContext() : base("name=MyContext")
  7. {
  8. }
  9. public DbSet<Data> Datas { get; set; }
  10. }
  11. public class Data
  12. {
  13. public int Id { get; set; }
  14. public string Name { get; set; }
  15. }
  16. class Program
  17. {
  18. static void Main(string[] args)
  19. {
  20. Database.SetInitializer(new DropCreateDatabaseAlways<MyContext>());
  21. var context = new MyContext();
  22. context.Datas.Add(new Data{Name="EF6-MySql"});
  23. context.SaveChanges();
  24. }
  25. }
  26. }

五、在Mysql的cmd下查询:

 
六、采用Database First:
    这种实现方式与在Sql server下的Database的做法是相同的,但是有时会连接不上Mysql。我一开始就尝试采用Database来连接Mysql,但是在VS2013里一直无法连接到Mysql server。所以我才采用了上面的Code First。但是当我用Code Frist成功之后,我发现,我的VS2013也能够连接到Mysql server了。真是神奇,具体原因我还不清楚。
 
 

EntityFramework 6.0< Code First > 连接 Mysql数据库(转)的更多相关文章

  1. EntityFramework 6.0< Code First > 连接 Mysql数据库

    网上有很多关于用EntityFrame来连接Mysql数据库的教程,可是很多并不靠谱,转载的太多了.找了很久,总算是配置好了,现在分享一下. 一,安装:     1.开发环境: VS2013与EF6 ...

  2. 转载:EntityFramework 6.0< Code First > 连接 Mysql数据库

    转载自:http://blog.csdn.net/kmguo/article/details/19650299 网上有很多关于用EntityFrame来连接Mysql数据库的教程,可是很多并不靠谱,转 ...

  3. EF 6.0 Code First 迁移MySql数据库

    一.准备工作     使用NUGET安装Entity Framework 6,下载MySql Connector/Net 6.9.5   二.创建实体     我们在下面创建了两个类(博客和文章),并 ...

  4. C# 之 .net core -- EF code first连接Mysql数据库

    一.在Models 新建两个数据库类 这个是数据库需要生成的类基础(塑造外观) public class User { [Key] public string ID { get; set; } [Ma ...

  5. MVC3、如何应用EntityFramework 连接MySql 数据库

    原文:MVC3.如何应用EntityFramework 连接MySql 数据库 新的一年,新的开始. 今天总结的主题是在MySql中应用EntityFramework 的Code First模式. 开 ...

  6. VB6.0连接MySQL数据库

    VB6.0连接MySQL数据库

  7. Eclipse中利用JSP把mysql-connector-java-8.0.13.jar放到WebContent\WEB-INF\lib中连接MySQL数据库时Connection conn = DriverManager.getConnection(url,username,password)报错的解决办法

    开发环境: 1.系统:windows 7/8/10均可 2.jdk:1.8.0_144 3.服务器:apache-tomcat-9.0.8 4.IDE:eclipse+jsp 0.网页代码如下: &l ...

  8. 用MyEclipse10.0远程连接Mysql数据库服务器

    说明:本文档所有的操作均在满足以下条件的情况下操作, A.远程Linux服务器已经安装好MySQL数据库 B.本地电脑可以ping通远程服务器 C.已经成功安装了Myeclipse 一.下载mysql ...

  9. django2.0+连接mysql数据库迁移时候报错

    django2.0+连接mysql数据库迁移时候报错 情况一 错误信息 django.core.exceptions.ImproperlyConfigured: mysqlclient 1.3.13 ...

随机推荐

  1. JavaScript 中 for in 循环和数组的问题

    本文由 伯乐在线 - ElvisKang 翻译,进林 校稿.未经许可,禁止转载!英文出处:adripofjavascript.com.欢迎加入翻译小组. JavaScript的for…in循环用于迭代 ...

  2. Valid Pattern Lock(dfs + 暴力)

    Valid Pattern Lock Time Limit: 2 Seconds      Memory Limit: 65536 KB Pattern lock security is genera ...

  3. The Bottom of a Graph(tarjan + 缩点)

    The Bottom of a Graph Time Limit: 3000MS   Memory Limit: 65536K Total Submissions: 9139   Accepted:  ...

  4. 最长不下降子序列 O(nlogn) || 记忆化搜索

    #include<stdio.h> ] , temp[] ; int n , top ; int binary_search (int x) { ; int last = top ; in ...

  5. XSS跨站脚本攻击实例讲解,新浪微博XSS漏洞过程分析

    2011年6月28日晚,新浪微博遭遇到XSS蠕虫攻击侵袭,在不到一个小时的时间,超过3万微博用户受到该XSS蠕虫的攻击.此事件给严重依赖社交网络的网友们敲响了警钟.在此之前,国内多家著名的SNS网站和 ...

  6. cocos2d调度器(定时执行某函数)

    调度器(scheduler) 继承关系 原理介绍 Cocos2d-x调度器为游戏提供定时事件和定时调用服务.所有Node对象都知道如何调度和取消调度事件,使用调度器有几个好处: 每当Node不再可见或 ...

  7. openCV的基本操作

    http://www.cnblogs.com/luluathena/archive/2010/09/29/1838471.html

  8. Linux系统管理员面试50题

    命令nslookup是做什么的? Nslookup 是一个 监测网络中 DNS 服务器是否能正确实现域名解析的命令行工具. 你如何把CPU占用率最高的进程显示出来? top -c 按照cpu排序 如果 ...

  9. 又是一个二模02,不过day2

    话说比较简单.除了第三题不会写平衡树啊你妹!!边做边写吧. 机智的链接~机智的链接~机智的链接~机智的链接~机智的链接~机智的链接~机智的链接~机智的链接~机智的链接~机智的链接~机智的链接~机智的链 ...

  10. LVM XFS增加硬盘分区容量(resize2fs: Bad magic number in super-block while)

    LVM XFS增加硬盘分区容量(resize2fs: Bad magic number -- :: 分类: Linux LVM XFS增加硬盘分区容量(resize2fs: Bad magic num ...