Как узнать, соответствуют ли ваши миграции актуальности с migratordotnet?
Я использую migratordotnet для управления миграцией базы данных. Я запускаю их при настройке приложения, как это, но я также хотел бы проверить при запуске приложения, чтобы обновления были современными, и предоставить возможность перехода на последнюю версию. Как мне узнать, есть ли доступные миграции, которые необходимо применить? Я вижу, что я могу получить миграции, которые были применены, как это
var asm = Assembly.GetAssembly(typeof(Migration_0001));
var migrator = new Migrator.Migrator("SqlServer", setupInfo.DatabaseConnectionString, asm);
var applied = migrator.AppliedMigrations;
Мне нравится делать что-то вроде этого:
var available = migrator.AvailableMigrations; //this property does not exist.
1 ответ
Решение
Я нашел способ. Глядя на исходный код migratordotnet помогает.
var provider = ProviderFactory.Create("SqlServer", myConnectionString);
var loader = new MigrationLoader(provider, asm, false);
var availableMigrations = loader.GetAvailableMigrations();