c# - 在运行 update-database 之前删除代码优先迁移

标签 c# asp.net-mvc entity-framework entity-framework-migrations

这个看似简单得令人沮丧的问题很难在 Google 和 SO 上找到答案。我有一个 ASP.NET MVC 项目,我正在使用 Entity Framework 和代码优先方法。我去添加另一个迁移,但当我运行 Add-Migration MigrationName 命令时,我拼错了 MigrationName

我尚未运行Update-Database。重命名自动创建的迁移类名称就足够了吗?或者我是否必须先删除迁移并添加具有正确名称的新迁移?如果是这样,我该怎么做?只需删除自动创建的迁移类还是还有更多内容?

最佳答案

虽然您可以重命名它们,但我认为您可能会遇到与创建的 *.resx 文件有关的一些问题,因为它包含压缩的 EDMX 文件以及一些命名的东西。最简单的方法是删除根迁移类(这还将删除 migration.Designer.csmigration.resx 文件)并重新创建它。

如果您已经运行了 Update-Database 命令,您仍然可以通过回滚此命令来实现它:

Update-Database -TargetMigration NameOfPreviousMigration

(如果回滚会破坏数据,您可能需要添加-Force)

关于c# - 在运行 update-database 之前删除代码优先迁移,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38330894/

相关文章:

c# - mvc3 RedirectToAction

c# - 在 .NET 4.5 中编译的 LINQ 查询

c# - 是否可以在网络浏览器或框架中自动执行按钮点击和文本输入。如果有必要,甚至可以使用桌面工具?

c# - 每次具有不同参数的计时器

c# - 反序列化 JSON 对象的一部分并将其序列化回来,其余属性保持不变

c# - 在 MVC 中使用 CasSTLe Windsor 和 FluentValidation

c# - C# 可以提供 static_assert 吗?

asp.net-mvc - 可访问性不一致 : property type in DbContext

c# - 如何使用实体数据模型将图像从图像控件插入WPF到SQL数据库

asp.net-mvc - 如何将自动增量 ID 从域模型映射到 Entity Framework ASP.NET Web API 中的实体模型