首页 > 解决方案 > 移动到另一个项目时,现有的实体框架迁移不起作用

问题描述

我有一个带有实体框架 6 和代码优先方法的 Asp.NET MVC 应用程序。有许多迁移,例如 a、b、c 和 d。

我有一个新的要求来构建一个具有不同架构的新 Asp.net MVC 应用程序。数据库与旧解决方案相同。在新解决方案中,我已将旧解决方案的 Migrations 文件夹中的所有迁移文件复制到新解决方案中。

现在,当我发出命令时Add-Migration ABC,它会创建整个数据库快照。我只希望迁移文件夹中存在的最后一个迁移的迁移中的新更改。

现在,当我Get-Migrations在包管理器控制台中执行此操作时,我只看到我刚刚创建的迁移,即 ABC,但看不到我从旧项目中复制的旧版本。

要在代码优先的方法中使用现有数据库,有一种方法可以给出命令Add-Migration InitialCreate –IgnoreChanges,但我不知道有什么不同的方法。

我的问题是:

  1. 我可以在新项目中获取所有旧迁移吗?
  2. 在__MigrationHistory表中已经有很多迁移并且现在与我的情况类似的另一个应用程序连接的数据库的工作方式是什么?

标签: c#entity-frameworkentity-framework-6ef-code-first

解决方案


推荐阅读