feat: implement database integration for style and title repositories
This commit is contained in:
@@ -21,12 +21,6 @@ try
|
|||||||
// Necessite le package Nuget Microsoft.AspNetCore.Mvc.Razor.RuntimeCompilation.
|
// Necessite le package Nuget Microsoft.AspNetCore.Mvc.Razor.RuntimeCompilation.
|
||||||
.AddRazorRuntimeCompilation();
|
.AddRazorRuntimeCompilation();
|
||||||
|
|
||||||
builder.Services.AddScoped<ITitreRepository, LocalTitreRepository>();
|
|
||||||
builder.Services.AddScoped<IStyleRepository, LocalStyleRepository>();
|
|
||||||
|
|
||||||
builder.Services.AddScoped<ITitreRepository, DbTitreRepository>();
|
|
||||||
builder.Services.AddScoped<IStyleRepository, DbStyleRepository>();
|
|
||||||
|
|
||||||
builder.Services.AddDbContext<WebzineDbContext>(options =>
|
builder.Services.AddDbContext<WebzineDbContext>(options =>
|
||||||
options.UseSqlite(builder.Configuration.GetConnectionString("DefaultConnection")));
|
options.UseSqlite(builder.Configuration.GetConnectionString("DefaultConnection")));
|
||||||
|
|
||||||
@@ -46,6 +40,19 @@ try
|
|||||||
db.Database.EnsureCreated();
|
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<bool>("UseDatabase");
|
||||||
|
if (useDatabase)
|
||||||
|
{
|
||||||
|
builder.Services.AddScoped<ITitreRepository, DbTitreRepository>();
|
||||||
|
builder.Services.AddScoped<IStyleRepository, DbStyleRepository>();
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
builder.Services.AddScoped<ITitreRepository, LocalTitreRepository>();
|
||||||
|
builder.Services.AddScoped<IStyleRepository, LocalStyleRepository>();
|
||||||
|
}
|
||||||
|
|
||||||
// Active le middleware permettant le routage des requetes entrantes.
|
// Active le middleware permettant le routage des requetes entrantes.
|
||||||
app.UseRouting();
|
app.UseRouting();
|
||||||
|
|
||||||
|
|||||||
@@ -9,6 +9,7 @@
|
|||||||
"NombreDerniereChronique": 3,
|
"NombreDerniereChronique": 3,
|
||||||
"NombreDeTopTitres": 3
|
"NombreDeTopTitres": 3
|
||||||
},
|
},
|
||||||
|
"UseDatabase": true,
|
||||||
"ConnectionStrings": {
|
"ConnectionStrings": {
|
||||||
"DefaultConnection": "Data Source=Data/webzine.sqlite"
|
"DefaultConnection": "Data Source=Data/webzine.sqlite"
|
||||||
},
|
},
|
||||||
|
|||||||
Reference in New Issue
Block a user