gpt4 book ai didi

asp.net - 如何在代码优先迁移中强制删除并重新创建选定的表?

转载 作者:行者123 更新时间:2023-12-03 20:22:48 25 4
gpt4 key购买 nike

我想删除一个有一千列的表,让迁移重新创建它。
我可以发出

    DropTable("MyTableWithManyColumns");

但问题是我会像这样手动创建表
    CreateTable(
"dbo.MyTable",
c => new
{
RowId = c.Int(nullable: false, identity: true),
// many columns follow...
})
.PrimaryKey(t => t.RowId);

更简单的方法是使用 SSMS 并右键单击 Drop Create Table 到新窗口并从那里执行。

但是有没有一种使用代码迁移的简单方法?

最佳答案

我可以看到两种可能的方式:

  • 从数据库中删除表
  • 生成新的迁移(使用 Add-Migration )。将生成创建缺失表的新迁移
  • 执行迁移(使用 Update-Database)

  • 要么
  • 从上下文中删除实体(记住删除与其他实体的所有关系)
  • 使用 Add-Migration 生成迁移(它会生成一个删除表方法)
  • 使用 Update-Database 执行迁移
  • 将实体添加到上下文
  • 使用 Add-Migration 生成新的迁移(它会生成一个创建表的方法)
  • 使用 Update-Database 执行迁移

  • 希望能帮助到你!

    关于asp.net - 如何在代码优先迁移中强制删除并重新创建选定的表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34267155/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com