Browse Source

Always migrate seed data

pull/5364/head
liangshiwei 6 years ago
parent
commit
0e8769803a
  1. 30
      templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Domain/Data/MyProjectNameDbMigrationService.cs

30
templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Domain/Data/MyProjectNameDbMigrationService.cs

@ -47,27 +47,25 @@ namespace MyCompanyName.MyProjectName.Data
var migratedDatabaseSchemas = new HashSet<string>(); var migratedDatabaseSchemas = new HashSet<string>();
foreach (var tenant in tenants) foreach (var tenant in tenants)
{ {
if (!tenant.ConnectionStrings.Any()) if (tenant.ConnectionStrings.Any())
{ {
continue; using (_currentTenant.Change(tenant.Id))
}
using (_currentTenant.Change(tenant.Id))
{
var tenantConnectionStrings = tenant.ConnectionStrings
.Select(x => x.Value)
.ToList();
if (!migratedDatabaseSchemas.IsSupersetOf(tenantConnectionStrings))
{ {
await MigrateDatabaseSchemaAsync(tenant); var tenantConnectionStrings = tenant.ConnectionStrings
.Select(x => x.Value)
.ToList();
migratedDatabaseSchemas.AddIfNotContains(tenantConnectionStrings); if (!migratedDatabaseSchemas.IsSupersetOf(tenantConnectionStrings))
} {
await MigrateDatabaseSchemaAsync(tenant);
await SeedDataAsync(tenant); migratedDatabaseSchemas.AddIfNotContains(tenantConnectionStrings);
}
}
} }
await SeedDataAsync(tenant);
Logger.LogInformation($"Successfully completed {tenant.Name} tenant database migrations."); Logger.LogInformation($"Successfully completed {tenant.Name} tenant database migrations.");
} }
@ -92,4 +90,4 @@ namespace MyCompanyName.MyProjectName.Data
await _dataSeeder.SeedAsync(tenant?.Id); await _dataSeeder.SeedAsync(tenant?.Id);
} }
} }
} }

Loading…
Cancel
Save