从上次迁移运行“ dotnet ef迁移脚本”

时间:2020-01-17 21:33:07

标签: azure-devops entity-framework-core

在Azure DevOps中,我具有以下命令的构建任务:

dotnet ef migrations script --output path/migrations-script.sql --idempotent

在发布管道中,我运行生成的脚本。

我遇到的问题是上述命令从第一次迁移开始运行。我知道我可以为此命令指定一个from参数,但是您必须指定迁移的名称。有什么方法可以在不指定脚本名称的情况下从上一次迁移生成脚本?

1 个答案:

答案 0 :(得分:0)

有什么方法可以从上一次迁移中生成脚本 没有指定名称?

据我所知,除非我们只有一次迁移,否则我们在尝试从上一次迁移生成脚本时必须指定名称。

有关dotnet ef migrations script,请参见the details

参数:

From开始迁移。迁移可以通过名称或ID进行标识。数字0是一种特殊情况,表示在第一次迁移之前。默认为0。

To即将结束的迁移。默认为上一次迁移。

因此,如果我们有多个迁移,则必须在所需的开始迁移中指定From。此行为是设计。选中this post,要从上一次迁移中生成脚本,我们应该使用以下格式:

dotnet ef migrations script -from (MigrationYouWant-1) -to MigrationYouWant

因此,恐怕在Devops管道或本地计算机中没有其他方法可以执行此操作,我们必须使用名称指定命令。希望我的回答可以帮助您澄清一些问题:)