using Hutopy.Web.Features.Contents.Data; namespace Hutopy.Web.Features.Memberships.Data; public static class InitializerExtensions { public static async Task InitialiseMembershipDbContextAsync(this WebApplication app) { using var scope = app.Services.CreateScope(); var initializer = scope.ServiceProvider.GetRequiredService(); await initializer.InitialiseAsync(); } } public class MembershipDbContextInitializer( ILogger logger, MembershipDbContext context ) { public async Task InitialiseAsync() { try { await context.Database.MigrateAsync(); } catch (Exception ex) { logger.LogError(ex, "An error occurred while initialising the membership database."); throw; } } }