#145 : Ajout du seeder Spotify.
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
// L'erreur SA1200 (ordre des using directives) est desactivée pour Program.cs
|
||||
// L'erreur SA1200 (ordre des using directives) est desactivee pour Program.cs
|
||||
#pragma warning disable SA1200
|
||||
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
@@ -6,6 +6,7 @@ using Microsoft.EntityFrameworkCore;
|
||||
using NLog;
|
||||
using NLog.Web;
|
||||
|
||||
using Webzine.Business.Seeders;
|
||||
using Webzine.EntitiesContext;
|
||||
using Webzine.Entity;
|
||||
using Webzine.Entity.Fixtures;
|
||||
@@ -22,8 +23,7 @@ try
|
||||
{
|
||||
var builder = WebApplication.CreateBuilder(args);
|
||||
|
||||
// Ajoute les services necessaires pour permettre l'utilisation des
|
||||
// controllers avec des vues.
|
||||
// Ajoute les services necessaires pour permettre l'utilisation des controllers avec des vues.
|
||||
builder.Services.AddControllersWithViews()
|
||||
|
||||
// Ajoute la compilation des vues lors de l'execution de l'application.
|
||||
@@ -34,11 +34,14 @@ try
|
||||
// NLog: Setup NLog for Dependency injection
|
||||
builder.Logging.ClearProviders();
|
||||
builder.Host.UseNLog();
|
||||
builder.Services.Configure<SpotifySeederOptions>(builder.Configuration.GetSection("SpotifySeeder"));
|
||||
builder.Services.AddHttpClient<SeedDataSpotify>();
|
||||
|
||||
// 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.
|
||||
// En fonction de la configuration, utilise soit les repositories bases sur une base de donnees, soit les repositories bases sur des listes locales.
|
||||
var repositoryType = builder.Configuration.GetValue<RepositoryType>("Repository");
|
||||
var seederType = builder.Configuration.GetValue<SeederType>("Seeder");
|
||||
var shouldSeed = args.Contains("--seed");
|
||||
|
||||
if (repositoryType == RepositoryType.Db)
|
||||
{
|
||||
if (builder.Environment.IsProduction())
|
||||
@@ -68,7 +71,7 @@ try
|
||||
}
|
||||
|
||||
// https://learn.microsoft.com/fr-fr/aspnet/core/performance/response-compression?view=aspnetcore-10.0#configuration
|
||||
// Ajoute le service de compression des réponses HTTP pour réduire la taille des données envoyées au client et améliorer les performances de l'application.
|
||||
// Ajoute le service de compression des reponses HTTP pour reduire la taille des donnees envoyees au client et ameliorer les performances de l'application.
|
||||
builder.Services.AddResponseCompression();
|
||||
|
||||
var app = builder.Build();
|
||||
@@ -90,7 +93,9 @@ try
|
||||
}
|
||||
else if (seederType == SeederType.Spotify)
|
||||
{
|
||||
// Seed à l'aide de l'API Spotify.
|
||||
var spotifySeeder = scope.ServiceProvider.GetRequiredService<SeedDataSpotify>();
|
||||
var jeuDeDonnees = await spotifySeeder.GenererJeuDeDonneesAsync();
|
||||
repo.SeedBaseDeDonnees(jeuDeDonnees);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -123,8 +128,7 @@ try
|
||||
|
||||
app.UseResponseCompression();
|
||||
|
||||
// Active la possibilité de servir des fichiers statiques presents dans
|
||||
// le dossier wwwroot.
|
||||
// Active la possibilite de servir des fichiers statiques presents dans le dossier wwwroot.
|
||||
app.UseStaticFiles(new StaticFileOptions
|
||||
{
|
||||
OnPrepareResponse = ctx =>
|
||||
@@ -137,7 +141,7 @@ try
|
||||
// Active le middleware permettant le routage des requetes entrantes.
|
||||
app.UseRouting();
|
||||
|
||||
// Appelle les routes définies dans le dossier Extensions.
|
||||
// Appelle les routes definies dans le dossier Extensions.
|
||||
app.MapCustomRoutes();
|
||||
|
||||
app.Run();
|
||||
|
||||
@@ -34,6 +34,7 @@
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\Webzine.Business\Webzine.Business.csproj" />
|
||||
<ProjectReference Include="..\Webzine.EntitiesContext\Webzine.EntitiesContext.csproj" />
|
||||
<ProjectReference Include="..\Webzine.Entity\Webzine.Entity.csproj" />
|
||||
<ProjectReference Include="..\Webzine.Repository\Webzine.Repository.csproj" />
|
||||
|
||||
@@ -17,10 +17,10 @@
|
||||
"ClientId": "754247cf73e047bf9d6acf44977b6c4a",
|
||||
"ClientSecret": "0e674c5ac1c249f1af711fb08a919a02",
|
||||
"Market": "FR",
|
||||
"Genres": [ "rock", "pop", "jazz", "hip hop", "electronic", "metal" ],
|
||||
"ArtistsPerGenre": 4,
|
||||
"AlbumsPerArtist": 2,
|
||||
"TracksPerAlbum": 4,
|
||||
"Genres": [ "rock", "pop", "jazz", "hip hop", "electronic", "metal", "hyper pop" ],
|
||||
"ArtistsPerGenre": 50,
|
||||
"AlbumsPerArtist": 20,
|
||||
"TracksPerAlbum": 40,
|
||||
"MaxCommentsPerTrack": 3
|
||||
},
|
||||
"AllowedHosts": "*"
|
||||
|
||||
Reference in New Issue
Block a user