예제 #1
0
 internal static MigrationVersion GetFirstVersionOrDefault(IEnumerable <Migration> migrationsToBeApplied)
 {
     return(migrationsToBeApplied.Any()
         ? migrationsToBeApplied.Min(migration => migration.Version)
         : MigrationVersion.Default());
 }
예제 #2
0
 internal static MigrationVersion GetMaxVersionOrDefault(IEnumerable <RepositoryMigration> repositoryMigrations)
 {
     return(repositoryMigrations.Any()
         ? repositoryMigrations.Max(migration => migration.Version)
         : MigrationVersion.Default());
 }
예제 #3
0
 internal static bool MigrationSessionIsAvailableToExecute(IEnumerable <MigrationSession> migrationSessions)
 {
     return(!migrationSessions
            .Any(session => session.CompletedOn == null &&
                 session.CompletedOnVersion == MigrationVersion.Default()));
 }