2012-01-30 56 views
0

我在我的dbcontext中添加了这个。它应该创建数据库,但它doesnt ..我做错了什么? Create'DatabaseIfNotExists是否应该在创建上下文后创建数据库?CreateDatabaseIfNotExists是否应该在Entity Framework 4.1中工作

protected override void OnModelCreating(DbModelBuilder modelBuilder) 
    { 

     modelBuilder.Configurations.Add(new ProjectConfiguration()); 
     Database.SetInitializer<PfsContext>(new CreateDatabaseIfNotExists<PfsContext>()); 
     base.OnModelCreating(modelBuilder); 
    } 

回答

1

数据库初始化程序在创建上下文后不会创建数据库。它应该在您使用上下文进行日期检索(执行查询)或数据持久性(保存更改)后创建数据库。您也可以手动触发创建:

context.Database.Initialize(false); 
+0

@LadislavMarnka如何处理已存在的数据库但不是表? – Rushino 2012-01-30 17:19:58

+1

这对于内置的初始化程序是不可能的。你必须创建你自己的。内置的初始化器可以一起创建数据库和表。 – 2012-01-30 19:35:50

+0

好吧,那回答我的问题。 – Rushino 2012-01-30 23:38:54

相关问题