Devo applicare le migrazioni Entity Framework Core una per una nel codice , posso richiamare l' await dbContext.Database.MigrateAsync();
ma applica tutte le migrazioni in sospeso in un blocco.
Esiste un'estensione o un altro metodo per applicare le migrazioni solo una per una o selezionando il nome della migrazione da applicare?
Esiste un servizio IMigrator con un metodo Migrate(string targetMigration)
che riceve il nome della migrazione, questo metodo viene utilizzato dall'estensione Migrate()
. Da un'istanza di DbContext può essere utilizzato come:
await dbContext.Database.GetInfrastructure().GetService<IMigrator>().MigrateAsync(targetMigrationName);
I nomi delle migrazioni in sospeso possono essere interrogati da questa estensione:
var pending = dbContext.Database.GetPendingMigrations();