EF CodeFirst 自動建立資料庫和表例項
阿新 • • 發佈:2021-08-03
1 新建 .net 5 控制檯專案
2 在專案中引用 Microsoft.EntityFrameworkCore 和 Microsoft.EntityFrameworkCore.SqlServer 包
3 新建表實體
namespace CodeFirst_EF.EFClass { /// <summary> /// 學生實體 /// </summary> public class StudentEntity { public int Id { get; set; } // 預設這個為主鍵 public string Name { get; set; } public int Age { get; set; } } }
4 新建上下文
using Microsoft.EntityFrameworkCore; namespace CodeFirst_EF.EFClass { public class TestDbContext : DbContext { public TestDbContext() : base() { Database.EnsureCreated(); }protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder) { base.OnConfiguring(optionsBuilder); optionsBuilder.UseSqlServer("server=DESKTOP-M37JR2B;database=Test_210803;trusted_connection=yes;"); } public DbSet<StudentEntity> Students { get; set; } // 會建立 Students 表 } }
5 測試
using CodeFirst_EF.EFClass; using System; namespace CodeFirst_EF { // 第1步 引用 Microsoft.EntityFrameworkCore,Microsoft.EntityFrameworkCore.SqlServer class Program { static void Main(string[] args) { TestEFCodeFirst(); Console.Read(); } /// <summary> /// 執行完這個方法後,會自動新建 Test_210803 資料庫,同時也會建立 Students 表 /// </summary> public static void TestEFCodeFirst() { var dbContext = new TestDbContext(); } } }
6 執行結果