From fa1639e3b5ccaa30a6085f1b36ba7044a86bc36a Mon Sep 17 00:00:00 2001 From: mirage <119869686+ClementBobin@users.noreply.github.com> Date: Wed, 25 Mar 2026 14:21:53 +0100 Subject: [PATCH] feat: implement database integration for style and title repositories --- Webzine.WebApplication/Program.cs | 19 +++++++++++++------ Webzine.WebApplication/appsettings.json | 1 + 2 files changed, 14 insertions(+), 6 deletions(-) diff --git a/Webzine.WebApplication/Program.cs b/Webzine.WebApplication/Program.cs index f1e3635..b41378c 100644 --- a/Webzine.WebApplication/Program.cs +++ b/Webzine.WebApplication/Program.cs @@ -21,12 +21,6 @@ try // Necessite le package Nuget Microsoft.AspNetCore.Mvc.Razor.RuntimeCompilation. .AddRazorRuntimeCompilation(); - builder.Services.AddScoped(); - builder.Services.AddScoped(); - - builder.Services.AddScoped(); - builder.Services.AddScoped(); - builder.Services.AddDbContext(options => options.UseSqlite(builder.Configuration.GetConnectionString("DefaultConnection"))); @@ -46,6 +40,19 @@ try db.Database.EnsureCreated(); } + // En fonction de la configuration, utilise soit les repositories basés sur une base de données, soit les repositories basés sur des listes locales. + bool useDatabase = builder.Configuration.GetValue("UseDatabase"); + if (useDatabase) + { + builder.Services.AddScoped(); + builder.Services.AddScoped(); + } + else + { + builder.Services.AddScoped(); + builder.Services.AddScoped(); + } + // Active le middleware permettant le routage des requetes entrantes. app.UseRouting(); diff --git a/Webzine.WebApplication/appsettings.json b/Webzine.WebApplication/appsettings.json index 7c147f2..6ef4a3b 100644 --- a/Webzine.WebApplication/appsettings.json +++ b/Webzine.WebApplication/appsettings.json @@ -9,6 +9,7 @@ "NombreDerniereChronique": 3, "NombreDeTopTitres": 3 }, + "UseDatabase": true, "ConnectionStrings": { "DefaultConnection": "Data Source=Data/webzine.sqlite" },