【发布时间】:2016-08-03 15:15:47
【问题描述】:
我有一个实体框架 6 代码优先项目。我删除了我的数据库并想从头开始重新创建它。当我运行 update-database 时,某些迁移不会运行。这会导致稍后出现错误,因为数据库未处于预期状态。
这是第一个被跳过的迁移:
using System.Data.Entity.Migrations; public partial class add_ConversationEntry_Type : DbMigration { public override void Up() { AddColumn("dbo.ConversationEntry", "Type", c => c.String(nullable: false)); } public override void Down() { DropColumn("dbo.ConversationEntry", "Type"); } }
它看起来很标准。它继承自 DbMigration 并且没有做任何奇怪的事情。接下来的 3 个也被跳过,它们都会影响 dbo.ConversationEntry 表。
使用 update-datebase -verbose 它会显示“正在应用显式迁移:”并列出迁移,而该列表中缺少这些迁移。
我已验证这些也在项目文件中。 update-database 从哪里获取迁移列表? 为什么有些会被跳过?
【问题讨论】:
-
你有没有想过这个问题?我们的第一次迁移也被跳过了......
标签: entity-framework-6 entity-framework-migrations