#131 Fix de l'affichage des modifications car les id de tous les éléments des listes sont égaux à 0. Ajout de la génération des id dans la SeedDbLocal + les commentaires sont ajoutés aux titres directement dans le seed. Correction de documentation de méthodes.

This commit is contained in:
josephine.vetu
2026-03-27 13:24:00 +01:00
parent 712d27af65
commit 7f5bfd1bb8
7 changed files with 67 additions and 45 deletions

View File

@@ -24,15 +24,11 @@ namespace Webzine.Repository
/// <param name="nbTitres">Nombre de titre.</param>
/// <param name="minStyles">Nombre min de style.</param>
/// <param name="maxStyles">Nombre mac de style.</param>
/// <param name="minCommentairesParTitre">Min commentaire par titre.</param>
/// <param name="maxCommentairesParTitre">Max commentaire par titre</param>
public void SeedBaseDeDonnees(
int nbArtistes = 100,
int nbTitres = 500,
int minStyles = 15,
int maxStyles = 20,
int minCommentairesParTitre = 0,
int maxCommentairesParTitre = 5)
int maxStyles = 20)
{
if (this.context.Artistes.Any() ||
this.context.Titres.Any() ||
@@ -50,23 +46,11 @@ namespace Webzine.Repository
this.context.SaveChanges();
List<string> albums = SeedDataLocal.GenererListeAlbums(3);
List<Titre> titres = SeedDataLocal.GenererListeTitre(nbTitres, artistes, styles, albums);
List<Commentaire> commentaires = new List<Commentaire>();
List<Titre> titres = SeedDataLocal.GenererListeTitre(nbTitres, artistes, styles, albums, commentaires);
this.context.Titres.AddRange(titres);
this.context.SaveChanges();
List<Commentaire> commentaires = new List<Commentaire>();
foreach (Titre titre in titres)
{
commentaires.AddRange(
SeedDataLocal.GenererListeCommentaire(
titre,
minCommentairesParTitre,
maxCommentairesParTitre));
}
this.context.Commentaires.AddRange(commentaires);
this.context.SaveChanges();
}
}

View File

@@ -1,15 +1,32 @@
using System;
using System.Collections.Generic;
using System.Text;
using Webzine.Entity;
using Webzine.Entity;
namespace Webzine.Repository
{
/// <summary>
/// Représente un entrepôt de données en mémoire (Mock) pour l'application.
/// Cette classe simule une base de données en stockant les entités dans des listes statiques
/// durant le cycle de vie de l'application.
/// </summary>
public class InMemoryDataStore
{
/// <summary>
/// Obtient ou définit la liste des artistes enregistrés.
/// </summary>
public List<Artiste> Artistes { get; set; } = new();
/// <summary>
/// Obtient ou définit la liste des titres (morceaux) musicaux.
/// </summary>
public List<Titre> Titres { get; set; } = new();
/// <summary>
/// Obtient ou définit la liste des styles musicaux disponibles.
/// </summary>
public List<Style> Styles { get; set; } = new();
/// <summary>
/// Obtient ou définit la liste des commentaires rédigés par les utilisateurs.
/// </summary>
public List<Commentaire> Commentaires { get; set; } = new();
}
}
}