9

我收到错误

“支持 'DataContext' 上下文的模型在创建数据库后发生了变化。考虑使用 Code First 迁移来更新数据库”。

我正在使用实体框架并在声明后更改了我的模型DataContext。我该如何解决这个错误?

4

4 回答 4

11

如果您删除__MigrationHistorySQL Server 中的表,它应该修复它。

于 2014-08-16T05:00:53.740 回答
8
  1. 如果您已经部署了应用程序,或者您不想从数据库中删除数据,则必须阅读有关 Code First Migrations 的信息。在这里你有一个链接: http: //msdn.microsoft.com/en-us/library/hh770484 (v=vs.103).aspx

  2. 如果您可以删除数据库,请执行此操作。EF 将创建与您的模型匹配的新数据库。

  3. 您还可以通过调用以下代码来禁用创建/更新数据库结构:

    Database.SetInitializer<MyDbContext>(null);
    
于 2013-06-09T14:17:31.520 回答
1

在更改了数据库上下文并解决了我的问题后,我首先使用数据库创建了一个项目:

Database.SetInitializer<Models.YourDbContext>(null);

不要忘记处理DbUpdateException

于 2016-12-15T20:38:40.843 回答
0

删除 SQL Server 中的 __MigrationHistory 表或该表的所有行,它应该修复它

于 2016-04-27T08:55:44.657 回答