Creé un nuevo proyecto .Net 5 y quiero usar EF Core. Generé automáticamente varios archivos de migración.cs usando
dotnet ef migrations add MyMigration
y desea aplicarlos (para desarrollo y producción). Conozco el método MigrateAsync , así que leí cómo llamar a este método al inicio
https://andrewlock.net/running-async-tasks-on-app-startup-in-asp-net-core-part-1/
pero en todas partes leo que este método no debe usarse para producción ya que esas migraciones no se ejecutarán en una sola transacción (sin reversión de errores).
Desafortunadamente, no hay muchos recursos sobre cómo hacerlo independientemente del entorno, encontré este artículo
Una opción podría ser una aplicación de consola que llame a las migraciones
pero no pude entender la diferencia de este enfoque porque no está resolviendo el problema transaccional.
¿Cuáles son las mejores prácticas para aplicar migraciones durante el desarrollo/producción?
Después de las migraciones autogeneradas, soy un gran admirador de la simplicidad, ¿la base de dotnet ef database update el trabajo y no necesito trabajar con herramientas adicionales?
¿Crear una aplicación de consola, generar archivos .sql a partir de las migraciones, instalar DbUp y usarlo para la parte de migración?