【发布时间】:2012-09-15 23:07:01
【问题描述】:
我正在尝试上传一个使用 EF 4 Code First 的 MVC 项目。
我偶然发现了我只能通过管理控制台创建数据库的问题,而 EF 严格要求自己创建数据库。
如何让 EF 使用我为它创建的(已经存在但为空的)数据库?连接字符串是正确的,它可以连接,但我得到这个错误:
Model compatibility cannot be checked because the database does not contain
model metadata. Model compatibility can only be checked for databases created
using Code First or Code First Migrations.
【问题讨论】:
-
您在代码中使用了哪个数据库初始化程序?它只需要在某些情况下创建数据库。
-
我使用的是 AutomaticMigration。
-
不,我的意思是您使用的是 DropCreateDatabaseIfModelChanges、DropCreateDatabaseAlways、MigrateDatabaseToLatestVersion 等?
-
我激活了 DropCreateDatabaseIfModelChanges。
-
请参阅下面的回答,了解以后如何避免此问题。
标签: sql-server asp.net-mvc-3 entity-framework