update type the migrations migraciones framework found force first existing code entity-framework entity-framework-6

entity-framework - type - update-database force



Comprobar las migraciones pendientes en Entity Framework (1)

En Entity Framework 6 estoy usando el comando Update-Database para aplicar migraciones. Tengo tres entornos que hago malabares (DEV, QA y PROD) y los actualizo usando

Update-Database -ConnectionStringName DEV

Pero ahora me gustaría saber en qué migración se encuentra mi entorno PROD y qué migraciones se aplicarán si llamo a Update-Database.

¿Existe un comando para verificar qué migración es la última aplicada, y cuál se aplicará si ejecuto Update-Database?


Para ver qué migraciones se han aplicado a la base de datos, use el comando Get-Migrations :

Get-Migrations -ConnectionStringName PROD

También puede verificar el contenido de la tabla __MigrationsHistory en la base de datos correcta. Contiene información sobre todas las migraciones aplicadas a la base de datos.

La siguiente migración aplicada depende de los archivos de migración existentes en su proyecto. Un nombre de archivo de migración incluye un prefijo que es una marca de tiempo, que especifica la hora en que se generó el archivo de migración (a menos que haya utilizado el parámetro -force que podría causar la reutilización de un archivo de migración existente manteniendo su cadena de marca de tiempo existente). Las migraciones se aplican de acuerdo con esa marca de tiempo. Por lo tanto, el orden alfabético de sus archivos de migración indica el orden en que se aplican.

Una forma segura de verificar qué migración se aplicará a continuación es ejecutar Update-Database con el parámetro -Script , que genera el script SQL para la migración pero no lo ejecuta. Para que pueda ver qué migración se aplicará si ejecuta la Update-Database real.