1

I'm using migratordotnet to manage my database migrations. I'm running them on application setup like this, but I would also like to check on application startup that the migrations are up to date, and provide the option to migrate to latest. How do I tell if there are available migrations that need to be applied? I see that I can get the migrations that were applied like this

var asm = Assembly.GetAssembly(typeof(Migration_0001));
var migrator = new Migrator.Migrator("SqlServer", setupInfo.DatabaseConnectionString, asm);
var applied = migrator.AppliedMigrations;

I like to do something like this:

var available = migrator.AvailableMigrations; //this property does not exist.
Community
  • 1
  • 1
Lance Fisher
  • 25,684
  • 22
  • 96
  • 122

1 Answers1

2

I found the way. Looking at migratordotnet source code helps.

var provider = ProviderFactory.Create("SqlServer", myConnectionString);
var loader = new MigrationLoader(provider, asm, false);
var availableMigrations = loader.GetAvailableMigrations();
Lance Fisher
  • 25,684
  • 22
  • 96
  • 122