Entity framework 是否在实体框架中检查挂起的迁移?

Entity framework 是否在实体框架中检查挂起的迁移?,entity-framework,entity-framework-6,Entity Framework,Entity Framework 6,在EntityFramework6中,我使用updatedatabase命令应用迁移。我有三个环境(DEV、QA和PROD),并使用 Update-Database -ConnectionStringName DEV 但是,现在我想知道我的PROD环境处于哪种迁移状态,如果调用Update Database,将应用哪种迁移 是否有命令用于检查哪个迁移是最新应用的迁移,以及如果运行更新数据库,将应用哪个迁移?要查看哪些迁移已应用于数据库,请使用以下命令: 您还可以检查右侧数据库中表\u Mig

在EntityFramework6中,我使用updatedatabase命令应用迁移。我有三个环境(DEV、QA和PROD),并使用

Update-Database -ConnectionStringName DEV 
但是,现在我想知道我的PROD环境处于哪种迁移状态,如果调用Update Database,将应用哪种迁移


是否有命令用于检查哪个迁移是最新应用的迁移,以及如果运行更新数据库,将应用哪个迁移?

要查看哪些迁移已应用于数据库,请使用以下命令:

您还可以检查右侧数据库中表
\u MigrationsHistory
的内容。它包含有关应用于数据库的所有迁移的信息

应用的下一次迁移取决于项目中现有的迁移文件。迁移文件名包含一个时间戳前缀,该前缀指定生成迁移文件的时间(除非使用了
-force
参数,该参数可能导致重用保留其现有时间戳字符串的现有迁移文件)。迁移是根据该时间戳应用的。因此,迁移文件的字母顺序表示应用它们的顺序

检查下一步将应用哪个迁移的安全方法是使用
-Script
参数运行
updatedatabase
,该参数为迁移生成SQL脚本,但不运行它。因此,如果运行real
Update数据库,您可以看到将应用哪种迁移


更新:在实体框架核心中,此命令不可用。您仍然可以检查
\u MigrationsHistory
表内容。要生成将在不运行的情况下执行的SQL脚本,可以使用命令。

谢谢,更新数据库-脚本听起来正是我想要的。它在EF Core中不起作用。您需要直接检查数据库中的“\u EFMigrationsHistory”表。它包含所有应用迁移的列表。@Razor23Donetsk True,此答案仅适用于entity-framework-6版本(如问题中标记的)。我会更新答案的,谢谢!
Get-Migrations -ConnectionStringName PROD