From 98cab7ec242002f3eb7c554a83dcd5fbbf42aabf Mon Sep 17 00:00:00 2001 From: Pat Hartl Date: Sun, 23 Mar 2025 20:01:44 -0500 Subject: [PATCH] Reorder database init to fix migrations --- LANCommander.Server/Program.cs | 4 +--- LANCommander.Server/Startup/Database.cs | 16 +++++----------- 2 files changed, 6 insertions(+), 14 deletions(-) diff --git a/LANCommander.Server/Program.cs b/LANCommander.Server/Program.cs index 0f911175..ad074100 100644 --- a/LANCommander.Server/Program.cs +++ b/LANCommander.Server/Program.cs @@ -30,13 +30,11 @@ builder.AddHangfire(); builder.AddOpenApi(); builder.AddServerProcessStatusMonitor(); builder.AddLANCommanderServices(settings); -builder.AddDatabase(); +builder.AddDatabase(settings, args); Log.Debug("Building Application"); var app = builder.Build(); -app.UseDatabase(args); - app.UseCors("CorsPolicy"); app.UseHttpsRedirection(); diff --git a/LANCommander.Server/Startup/Database.cs b/LANCommander.Server/Startup/Database.cs index 53960fcc..153ea092 100644 --- a/LANCommander.Server/Startup/Database.cs +++ b/LANCommander.Server/Startup/Database.cs @@ -6,28 +6,22 @@ using LANCommander.Server.Services; using LANCommander.Server.Services.Models; using Microsoft.Data.Sqlite; using Microsoft.EntityFrameworkCore; +using Octokit; using Serilog; namespace LANCommander.Server.Startup; public static class Database { - public static WebApplicationBuilder AddDatabase(this WebApplicationBuilder builder) + public static WebApplicationBuilder AddDatabase(this WebApplicationBuilder builder, Settings settings, string[] args) { builder.Services.AddDbContextFactory(); builder.Services.AddDbContext(); builder.Services.AddDatabaseDeveloperPageExceptionFilter(); - - return builder; - } - - public static WebApplication UseDatabase(this WebApplication app, string[] args) - { - var settings = app.Services.GetService(); var databaseProviderParameter = args.FirstOrDefault(arg => arg.StartsWith("--database-provider="))?.Split('=', 2).Last(); var connectionStringParameter = args.FirstOrDefault(arg => arg.StartsWith("--connection-string="))?.Split('=', 2).Last(); - + if (!String.IsNullOrWhiteSpace(databaseProviderParameter)) DatabaseContext.Provider = Enum.Parse(databaseProviderParameter); else @@ -38,8 +32,8 @@ public static class Database else DatabaseContext.ConnectionString = settings.DatabaseConnectionString; - return app; - } + return builder; + } public static async Task MigrateDatabaseAsync(this WebApplication app) {