先前看了很多文章,尝试了很多次总是进行不下去,实在是鄙人太小白了,今天弄成功了,整理一下,以便日后查看,如有雷同,纯属我抄你。


一. 下载插件

  • MySQL-Connector-net-6.9.9 
  • https://cdn.mysql.com//Downloads/Connector-Net/mysql-connector-net-6.9.10.msi
  • MySQL for Visual Studio  
  • https://cdn.mysql.com//Downloads/MySQL-for-VisualStudio/mysql-for-visualstudio-1.2.7.msi
  • 先安装connect 在安装MySQL for Visual Studio 
  • 如果不行再试试安装MySQL Installer 这个插件
  • https://dev.mysql.com/downloads/installer/
二.创建ASP.NET MVC


全名是ASP.NET Web  Application(.NET Framework)


2.1采用Nuget方式安装MySql.Data.Entity
EF Code First 连接Mysql
3. 在Model文件夹 右击-添加-新建项-数据-ADO.NET 实体数据模型

4.选择“空Code First模型”

5.新建2个类,修改DataModel
EF Code First 连接MysqlEF Code First 连接MysqlEF Code First 连接Mysql

EF Code First 连接Mysql

		[Key]
13        public int Id { get; set; }
14        public string Name { get; set; }

三.修改Web.config(这步很关键)


EF Code First 连接Mysql


这个上面是已经改好的

下面的是你需要改的代码

  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>


四.写入到HomeController里面

EF Code First 连接Mysql


以下是代码  


 public class HomeController : Controller
    {
        public ActionResult Index()
        {
        
            //创建上下文
            DataModel db = new DataModel();
            //创建数据库
            db.Database.CreateIfNotExists();
            //创建表且将字段加入进去
            UserInfo userInfo = new UserInfo();
            userInfo.Name = "du";
            //将表加入到数据库中
            db.UserInfo.Add(userInfo);
            //保存之
            db.SaveChanges();
            Console.WriteLine("成功创建数据库和表");
            Console.ReadKey();
        
            return View();
        }
    }



运行 

 

打开数据库 可以看到已经成功了


EF Code First 连接Mysql


相关文章: