使用MVC5+Entity Framework6的Code First模式創建數據庫並實現增刪改查功能


此處采用VS2017+SqlServer數據庫

 

一、創建項目並引用dll:

    1.創建一個MVC項目     

    2.采用Nuget安裝EF6.1.3

二、創建Model

        在models文件夾中,建立相應的model文件,這里建立的class名,就是數據庫里表的名字。
        在這里面,可以建立表之間的關系,本次將建立Course(課程)、Student(學生)、StuCourse(課程學生關系)來作為一個Demo

[Table("t_course")]   //可以通過Attribute的形式修改自動生成的表名,否則將生成courses復數形式的表
public class Course
{

public int ID { get; set; }

[Required]
public string course_Name { get; set; }

public string course_code { get; set; }

public virtual ICollection<StuCourse> StuCousers { get; set; }

}

 

public class Student
{

public int ID { get; set; }

[Required]
[MaxLength(10)]
public string stu_Name { get; set; }

public string stu_Pwd { get; set; }

public string stu_sex { get; set; }

public int stu_age { get; set; }

public virtual ICollection<StuCourse> StuCousers { get; set; }

}

 

public class StuCourse
{

public int ID { get; set; }

public int StudentID { get; set; }

public int CourseID { get; set; }

public virtual Student Student { get; set; }

public virtual Course Course { get; set; }

}

 

三、新建一個Dal文件夾,用來建立Database Context

public class EFDBContext:DbContext
{
public EFDBContext() : base("EFDBContext") //數據庫鏈接的Web.config中結點名字
{

}

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

public virtual DbSet<Course> Courses { get; set; }

public virtual DbSet<StuCourse> StuCouse { get; set; }

}

四、配置數據庫連接信息

  在WebConfig文件中增加connectionStrings節點,填寫數據庫連接信息,此處是我本機所裝的sql server,提前建好的Database:CodeFirst

  注意此節點的位置,不能放在第一,否則會報錯。

 

 五、生成數據庫遷移文件,並更新DB

   1.工具 -> 庫程序包管理器 -> 程序包管理器控制台

   2.運行命令 Enable-Migrations,

      這時候,你會發現在程序端多出一個文件夾叫Migrations,這里面有一個Configuration.cs文件

   3.運行命令Add-Migration,此命令會在Migrations文件下新增一個數據庫遷移文件,文件內容為創建或修改數據庫的表的代碼

   4.運行命令Update-Database 或Update-Database -Force,執行最新數據庫遷移文件,更新DB中的表信息

        在創建好表之后要修改表很簡單,直接修改Model,然后執行Add-Migration,會自動產生一個數據庫遷移文件,在執行Update-Database就會更新數據庫中的表了;

   還有一種方式可以開啟自動遷移,修改Migrations文件夾下Configuration,將AutomaticMigrationsEnabled的值修改為true即可,這樣一來再修改Model后就可以直

  接執行Update-Database命令來更新DB了

 六、創建Control並實現增刪改查功能(EntityFramework的腳手架會自動根據Model幫我們生成增刪改查功能及View,而且還自帶Bootstrap樣式

  1.添加Control並選擇包含視圖的MVC5控制器

2.下拉框選擇創建模型類數據庫上下文類

點擊添加出現如下彈出框就開始自動生成增刪改查頁面及相應功能

可以看到Controller和Views文件夾幫我們生成了如下文件:

   

 

 3.更改RouteConfig文件,設定Students的Index為默認啟動項

  4.運行程序結果如下,此時增刪改功能已經可以正常使用

 


免責聲明!

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



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