public async Task <DataMigrationRecord> GetDataMigrationRecordAsync() { if (_dataMigrationRecord == null) { _dataMigrationRecord = await _session.QueryAsync <DataMigrationRecord>().FirstOrDefault(); if (_dataMigrationRecord == null) { _dataMigrationRecord = new DataMigrationRecord(); _session.Save(_dataMigrationRecord); } } return(_dataMigrationRecord); }
DataMigrationRecord BuildDataMigrationRecord() { if (_schemas == null) { return(null); } var migrations = new DataMigrationRecord(); foreach (var schema in _schemas) { migrations.Migrations.Add(new DataMigration() { ModuleId = schema.ModuleId, Version = schema.Version, Statements = schema.Statements }); } return(migrations); }
public async Task <DataMigrationResult> ApplyMigrationsAsync(DataMigrationRecord dataMigrationRecord) { var result = new DataMigrationResult(); foreach (var migration in dataMigrationRecord.Migrations) { var success = await CommitMigrationAsync(migration); if (success) { result.SuccessfulMigrations.Add(migration); } else { result.FailedMigrations.Add(migration); } } result.Errors = _errors; return(result); }