using Microsoft.AspNetCore.Mvc; using Microsoft.AspNetCore.Mvc.Rendering; using Webzine.Entity; using Webzine.Entity.Fixtures; using Webzine.WebApplication.Areas.Administration.ViewModels.Artiste; using Webzine.WebApplication.Areas.Administration.ViewModels.Titre; namespace Webzine.WebApplication.Areas.Administration.Controllers; [Area("Administration")] public class ArtisteController : Controller { // Injection du logger via le constructeur private readonly ILogger _logger; public ArtisteController(ILogger logger) { _logger = logger; this._logger.LogDebug(1, "initialisation du ArtisteController d'administration"); } /// /// Affiche la liste des artistes. Pour l'instant, les artistes sont générés à partir de noms prédéfinis via la méthode SeedArtisteByName de la classe ArtisteFactory. /// Chaque artiste est ensuite ajouté à une liste d'artistes qui est passée à la vue via un objet GroupeArtisteViewModel. /// /// public IActionResult Index() { var nomsArtistes = new List { "The Beatles", "Théa", "Thédora", "Ricchi E Poveri", "Bad Bunny", "horsegiirL" }; List artistes = new List(); foreach (var nom in nomsArtistes) { Artiste artiste = ArtisteFactory.SeedArtisteByName(nom); artistes.Add(artiste); } GroupeArtisteViewModel groupeArtisteModel = new GroupeArtisteViewModel { Artistes = artistes }; return View(groupeArtisteModel); } /// /// Renvoie à la page modifier un artiste. /// Méthode vide pour le moment. /// /// public IActionResult Edit() { return View(); } /// /// Renvoie à la page supprimer un artiste. /// Méthode vide pour le moment. /// /// public IActionResult Delete() { return View(); } }