Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 意外删除了迁移历史记录中的记录?_C#_.net_Entity Framework_Ef Code First_Entity Framework 5 - Fatal编程技术网

C# 意外删除了迁移历史记录中的记录?

C# 意外删除了迁移历史记录中的记录?,c#,.net,entity-framework,ef-code-first,entity-framework-5,C#,.net,Entity Framework,Ef Code First,Entity Framework 5,我意外地删除了迁移历史记录中的记录。尝试为模型更改添加迁移时,我收到以下错误消息 无法生成显式迁移,因为以下显式迁移处于挂起状态:[201303101108238_InitialCreate,20130402055557_xxx,20130507051407_xxx,201306090833462_xxx,201306140437274_xxx]。在尝试生成新的显式迁移之前,应用挂起的显式迁移 如果运行更新数据库,将出现以下错误 数据库中已存在名为“TableName”的对象 我能做些什么使它工

我意外地删除了迁移历史记录中的记录。尝试为模型更改添加迁移时,我收到以下错误消息

无法生成显式迁移,因为以下显式迁移处于挂起状态:[201303101108238_InitialCreate,20130402055557_xxx,20130507051407_xxx,201306090833462_xxx,201306140437274_xxx]。在尝试生成新的显式迁移之前,应用挂起的显式迁移

如果运行
更新数据库
,将出现以下错误

数据库中已存在名为“TableName”的对象


我能做些什么使它工作?

迁移历史记录表包含Entity Framework的所有信息,以确定完成了哪些迁移。根据代码中当前的迁移列表,它将应用丢失的迁移

如果删除了此表而没有数据库部分,则有几个选项

  • 删除完整的数据库,让实体框架从头开始重建它(对于开发人员ok,您将丢失数据)
  • 创建第二个数据库,应用已对原始数据库执行的所有迁移,并复制粘贴_MigrationHistory表中缺少的内容

除了Mark提到的内容外,您还可以在迁移文件夹中找到迁移文件(从_MigrationHistory表中删除的文件),并在方法中上下注释代码,然后运行更新数据库。它应该可以工作。

删除表并更新数据库?