public new void MigrateUp(long targetVersion, bool useAutomaticTransactionManagement) { VersionLoader.LoadVersionInfo(); var validationVersionLoader = VersionLoader as ValidatingVersionLoader; if (validationVersionLoader == null) { throw new ArgumentException( string.Format("Class of type {0} is required, {1} given", typeof(ValidatingVersionLoader).FullName, VersionLoader.GetType().FullName ) ); } var storedMigrationInfos = validationVersionLoader.StoredMigrationInfos; var availableMigrations = MigrationLoader.LoadMigrations().ToList().ToDictionary(x => x.Key, x => x.Value); FilterAndValidateMigrations(storedMigrationInfos, availableMigrations); ValidateEnvironmentAttributeUsage(availableMigrations); base.MigrateUp(targetVersion, useAutomaticTransactionManagement); }