#106 Ajout du mode Repositories Local
This commit is contained in:
@@ -1,7 +1,9 @@
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using NLog;
|
||||
using NLog.Web;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using Webzine.EntitiesContext;
|
||||
using Webzine.Entity;
|
||||
using Webzine.Entity.Fixtures;
|
||||
using Webzine.Repository;
|
||||
using Webzine.Repository.Contracts;
|
||||
|
||||
@@ -43,7 +45,8 @@ try
|
||||
builder.Services.AddScoped<ITitreRepository, LocalTitreRepository>();
|
||||
builder.Services.AddScoped<IStyleRepository, LocalStyleRepository>();
|
||||
builder.Services.AddScoped<IArtisteRepository, LocalArtisteRepository>();
|
||||
//builder.Services.AddScoped<ICommentaireRepository, LocalCommentaireRepository>();
|
||||
builder.Services.AddScoped<ICommentaireRepository, LocalCommentaireRepository>();
|
||||
builder.Services.AddSingleton<InMemoryDataStore>();
|
||||
}
|
||||
|
||||
// https://learn.microsoft.com/fr-fr/aspnet/core/performance/response-compression?view=aspnetcore-10.0#configuration
|
||||
@@ -52,13 +55,40 @@ try
|
||||
|
||||
var app = builder.Build();
|
||||
|
||||
using (var scope = app.Services.CreateScope())
|
||||
if (useDatabase)
|
||||
{
|
||||
var db = scope.ServiceProvider.GetRequiredService<WebzineDbContext>();
|
||||
db.Database.EnsureDeleted();
|
||||
db.Database.EnsureCreated();
|
||||
var repo = scope.ServiceProvider.GetRequiredService<DbEntityRepository>();
|
||||
repo.SeedBaseDeDonnees();
|
||||
using (var scope = app.Services.CreateScope())
|
||||
{
|
||||
var db = scope.ServiceProvider.GetRequiredService<WebzineDbContext>();
|
||||
db.Database.EnsureDeleted();
|
||||
db.Database.EnsureCreated();
|
||||
var repo = scope.ServiceProvider.GetRequiredService<DbEntityRepository>();
|
||||
repo.SeedBaseDeDonnees();
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
using (var scope = app.Services.CreateScope())
|
||||
{
|
||||
var store = scope.ServiceProvider.GetRequiredService<InMemoryDataStore>();
|
||||
|
||||
var artistes = SeedDataLocal.GenererListeArtiste(100);
|
||||
var styles = SeedDataLocal.GenererListeStyle(15, 20);
|
||||
var albums = SeedDataLocal.GenererListeAlbums(50);
|
||||
var titres = SeedDataLocal.GenererListeTitre(500, artistes, styles, albums);
|
||||
|
||||
var commentaires = new List<Commentaire>();
|
||||
|
||||
foreach (var titre in titres)
|
||||
{
|
||||
commentaires.AddRange(SeedDataLocal.GenererListeCommentaire(titre, 0, 5));
|
||||
}
|
||||
|
||||
store.Artistes.AddRange(artistes);
|
||||
store.Styles = styles;
|
||||
store.Titres = titres;
|
||||
store.Commentaires.AddRange(commentaires);
|
||||
}
|
||||
}
|
||||
|
||||
app.UseResponseCompression();
|
||||
|
||||
Reference in New Issue
Block a user