我需要在代码中逐个应用实体框架核心迁移,我可以调用await dbContext.Database.MigrateAsync();
,但它会在一个块中应用所有待处理的迁移。
是否有扩展或其他方法逐一应用迁移或选择要应用的迁移名称?
答案 0 :(得分:2)
IMigrator服务使用Migrate(string targetMigration)
方法接收迁移名称,此方法由Migrate()
扩展程序使用。
从DbContext实例,它可以用作:
await dbContext.Database.GetInfrastructure().GetService<IMigrator>().MigrateAsync(targetMigrationName);
此扩展程序可以查询待处理的迁移名称:
var pending = dbContext.Database.GetPendingMigrations();