Entity Framework 数据库初始化四种策略

策略一:数据库不存在时重新创建数据库

1 Database.SetInitializer<testContext>(new CreateDatabaseIfNotExists<testContext>());

策略二:每次启动应用程序时创建数据库

1 Database.SetInitializer<testContext>(new DropCreateDatabaseAlways<testContext>());

策略三:模型更改时重新创建数据库

1 Database.SetInitializer<testContext>(new DropCreateDatabaseIfModelChanges<testContext>());

策略四:从不创建数据库

1 Database.SetInitializer<testContext>(null);

Entity Framework数据库初始化示例

 1 using System.Data.Entity;
 2 using System.Data.Entity.Infrastructure;
 3 using Web.Models.Mapping;
 4 
 5 namespace Web.Models
 6 {
 7     public class testContext : DbContext
 8     {
 9         static testContext()
10         {
11             Database.SetInitializer<testContext>(null);
12         }
13 
14         public testContext()
15             : base("Name=testContext")
16         {
17         }
18 
19         public DbSet<Person> People { get; set; }
20 
21         protected override void OnModelCreating(DbModelBuilder modelBuilder)
22         {
23             modelBuilder.Configurations.Add(new PersonMap());
24         }
25     }
26 }

 

posted @ 2015-12-07 14:45  duanyong  阅读(174)  评论(0编辑  收藏  举报