我在VS 2012中使用EF 5.0(CodeFirst)。我更改了我的模型(实体)并手动更改了我的数据库。我尝试运行该应用程序,并出现以下错误:
支持'XXXContext'上下文的模型自更改以来已更改 数据库已创建。考虑使用Code First Migrations进行更新 数据库(http://go.microsoft.com/fwlink/?LinkId=238269)。
我唯一的变化是实体属性的名称(数据库中的列)。
由于
答案 0 :(得分:1)
您可以选择使用数据库初始化程序或迁移。在应用程序启动中,您可以使用以下命令启用初始化程序:
System.Data.Entity.Database.SetInitializer<YourDbContextType>(new DropCreateDatabaseIfModelChanges());
如果需要,您还可以创建自己的逻辑子类。有关详细信息,请参阅http://www.codeguru.com/csharp/article.php/c19999/Understanding-Database-Initializers-in-Entity-Framework-Code-First.htm。
您还可以启用迁移并让它们自动更新您的数据库。在程序包管理器控制台中运行Enable-Migrations
可以执行此操作。点击此处了解更多信息http://msdn.microsoft.com/en-us/data/jj591621.aspx