private void MigrateDown(Type type, BsonDocument document, DocumentVersion version) { var migrations = _migrationLocator .GetMigrationsGtEq(type, version) .OrderByDescending(m => m.Version) .ToList(); for (var m = 0; m < migrations.Count; m++) { if (version == migrations[m].Version) { break; } migrations[m].Down(document); var docVersion = _versionService.DetermineLastVersion(version, migrations, m); _versionService.SetVersion(document, docVersion); } }