2011-03-25 58 views
2

我在我的EF Code First应用程序中注释了对Database.SetInitializer<>()的所有调用。但是,即使没有任何明确的调用来创建数据库,我的Asp.net MVC应用程序仍在创建一个数据库。我有几个原因为什么这是一个问题:为什么EF4.1 CodeFirst即使没有`Database.SetInitializer <>()`调用也创建数据库?

1)我不喜欢的事实,EF正在创建一个新的数据库,而我没有告诉它。

2)它一直试图创建(或更新)我的虚拟主机上的数据库(即使数据库已经存在),因此我得到权限被拒绝的例外。

有没有人有任何见解,为什么这似乎完全不受我的控制?

回答

4

在CTP 5溶液呈

Database.SetInitializer<MyContext>(null); 

我认为这并没有在EF 4.1改变。如果您对该呼叫发表评论,则默认为DropCreateDatabaseIfModelChanges

+0

工作,谢谢!这很烦人,但我必须这样做。 – KallDrexx 2011-03-26 00:15:58

相关问题