MVC+EF6-CodeFirst 連接MySQL並創建數據庫和表_Demo


VS2019+MVC+EF6-CodeFirst 連接MySQL

1、准備環境(通過NuGet獲取)

EntityFramework

MySql.Data.Entity

安裝后確認

2、在MVC-Model文件夾下添加一個學生類,后面用它通過[數據遷移]在MySQL中創建一個表

     public class Student
    {
        public int ID { get; set; }

        public string LastName { get; set; }

        public string FirstMidName { get; set; } 
    }

3、創建數據上下文 (先引入 using System.Data.Entity;)

namespace EFToMysqlDemo
{
    //  [DbConfigurationType(typeof(MySql.Data.Entity.MySqlEFConfiguration))] 如果去掉這一句,EF自動創建數據庫時會報錯,而此時創建控制器又會報錯,所以創建控制器的時候注銷這句就可以了
    [DbConfigurationType(typeof(MySql.Data.Entity.MySqlEFConfiguration))]
    public class EFDemoContext:DbContext
    {
        static EFDemoContext()
        {
            //開發環境中,如果數據結構發生變化,需要重新建庫,每次建庫后要重新插入測試數據,可以用DropCreateDatabaseIfModelChanges類來實現(生成環境中請使用 Migrations做數據遷移)
            Database.SetInitializer(new DropCreateDatabaseIfModelChanges<EFDemoContext>());
        }
        public EFDemoContext():base("EFToMysqlCon") { }


        public DbSet<Student> Students { get; set; }
    }
}

4、配置文件中添加鏈接字符串

4.1 具體參數按自己的做相應修改

  <connectionStrings>
    <add name="EFToMysqlCon" connectionString="Data Source=127.0.0.1;port=3306;Initial Catalog=EFDemoDb;user id=root;password=123456;" providerName="MySql.Data.MySqlClient" />
  </connectionStrings>

5、數據遷移

5.1 數據遷移常用命令

命令1:啟動EF數據遷移
Enable-Migrations -ContextTypeName 命名空間.上下文名稱
命令2:創建遷移文件
Add-Migration 自定義名稱
命令3:更新數據庫
Update-Database

5.2 打開程序包管理器控制台

5.3 按常用命令(5.1)依次執行

5.4 通過Navicat查看MySQL


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM