private void RunMigration(IMigration migration, DatabaseVersionModel databaseVersion) { // Check Actual DatabaseVersion against the migration version // Don't run unless this Migrations Migration has not been run if (databaseVersion.IsMigrationComplete == false) { migration.DbProvider = _dbProvider; // Migrate migration.Migrate(); if (_systemRole == SystemRole.Server) { migration.ServerMigrate(); } if (_systemRole == SystemRole.Client) { migration.ClientMigrate(); } // Update the database version to show the migration has been run databaseVersion.IsMigrationComplete = true; _dbProvider.Query <DatabaseVersionModel>().Where(dbv => dbv.VersionNumber == migration.MigrationVersion).Update(databaseVersion); } }