/// <summary> /// Установка миграций /// </summary> /// <param name="options">Опции командной строки</param> private static void UpdateDatabase(DbManagerOptions options) { Logger.Info("Обновление БД : "); var migrator = new DbMigrator(new TMigrationConfig()); migrator.SeedEnabled = options.SeedEnabled; migrator.SeedForTestEnabled = options.SeedForTestEnabled; var migrationIdProvider = new MigrationIdProvider(); var targetMigrationId = migrationIdProvider.GetMigrationId(migrator, options.Version, options.Migration, false); migrator.Update(targetMigrationId); Logger.Info("Успешно проведено обновление до миграции {0}", targetMigrationId); }
/// <summary> /// Откат базы данных /// </summary> /// <param name="options">Опции командной строки</param> private static void DowngradeDatabase(DbManagerOptions options) { Logger.Info("Откат БД : "); var migrator = new DbMigrator(new TMigrationConfig()); var migrationIdProvider = new MigrationIdProvider(); var targetMigrationId = migrationIdProvider.GetMigrationId(migrator, options.Version, options.Migration, true); migrator.Downgrade(targetMigrationId); Logger.Info( string.IsNullOrEmpty(targetMigrationId) ? "Успешно проведен откат к чистой БД" : "Успешно проведен откат к миграции {0}", targetMigrationId); }