EF Code first 数据自动迁移

public class Model1 : DbContext
{
  public Model1()
  : base("name=ConnectionStr")
  {

//SetInitializer 摘要: 设置要用于给定上下文类型的数据库初始值设定项。当给定的 System.Data.Entity.DbContext 类型首次用于访问数据库时调用数据库初始值设定项。
Code First 上下文的默认策略是 System.Data.Entity.CreateDatabaseIfNotExists`1 的实例。
//参数:
// strategy:
// 要使用的初始值设定项或 null,后者对于指定的上下文类型禁用初始化。

    Database.SetInitializer(new MigrateDatabaseToLatestVersion<Model1, AutomaticMigration>());
  }
  public virtual IDbSet<MyEntity> MyEntities { get; set; }
  public virtual IDbSet<Person> Persons { get; set; }
}

 

public class AutomaticMigration : DbMigrationsConfiguration<Model1>
{
  public AutomaticMigration()
  {

         //获取或设置指示迁移数据库时是否可使用自动迁移的值。
    AutomaticMigrationsEnabled = true;

    //注释掉下面这行则可以避免新建的字段数据被清掉
    AutomaticMigrationDataLossAllowed = false;

  }
}

posted @ 2016-12-11 12:37  blog_yuan  阅读(254)  评论(0)    收藏  举报