EF Code First Model欄位改變資料庫的欄位也跟著自動改變
阿新 • • 發佈:2018-12-16
在上下文中這樣寫程式碼
public class Context:DbContext { public Context():base("UserDB") { //自動建立表,如果Entity有改到就更新到表結構 Database.SetInitializer<Context>(new MigrateDatabaseToLatestVersion<Context, ReportingDbMigrationsConfiguration>()); } protected override void OnModelCreating(DbModelBuilder modelBuilder) { base.OnModelCreating(modelBuilder); //modelBuilder.Conventions.Remove<PluralizingTableNameConvention>();//這句是不要將EF生成的sql表名不要被複數 就是表名後面不要多加個S } internal sealed class ReportingDbMigrationsConfiguration : DbMigrationsConfiguration<Context> { public ReportingDbMigrationsConfiguration() { AutomaticMigrationsEnabled = true;//任何Model Class的修改將會直接更新DB AutomaticMigrationDataLossAllowed = true; } } public DbSet<UserInfo> UserInfo { get; set; } }