From 71cdf8d179c8b189d792b956ad14e9f6f5adeced Mon Sep 17 00:00:00 2001 From: mirage <119869686+ClementBobin@users.noreply.github.com> Date: Fri, 3 Apr 2026 16:52:55 +0200 Subject: [PATCH 1/2] fix: improve form handling for Create and Edit actions in TitreController --- .../Controllers/TitreController.cs | 55 +++++++++++++++++++ 1 file changed, 55 insertions(+) diff --git a/Webzine.WebApplication/Areas/Administration/Controllers/TitreController.cs b/Webzine.WebApplication/Areas/Administration/Controllers/TitreController.cs index 3f33a2d..7607228 100644 --- a/Webzine.WebApplication/Areas/Administration/Controllers/TitreController.cs +++ b/Webzine.WebApplication/Areas/Administration/Controllers/TitreController.cs @@ -95,6 +95,33 @@ public class TitreController : Controller [HttpPost] public IActionResult Create(TitreAdminDTO model) { + if (!this.ModelState.IsValid) + { + var form = new AdminTitreForm + { + IdArtiste = model.IdArtiste, + Libelle = model.Libelle, + Album = model.Album, + Chronique = model.Chronique, + DateSortie = model.DateSortie, + Duree = model.Duree, + UrlJaquette = model.UrlJaquette, + UrlEcoute = model.UrlEcoute, + Styles = model.Styles, + Artistes = this.artisteRepository.FindAll().Select(a => new SelectListItem + { + Value = a.IdArtiste.ToString(), + Text = a.Nom, + }).ToList(), + AllStyles = this.styleRepository.FindAll().Select(s => new SelectListItem + { + Value = s.IdStyle.ToString(), + Text = s.Libelle, + }).ToList(), + }; + return this.View(form); + } + this.titreAdminService.CreerTitre(model); return this.RedirectToAction("Index"); } @@ -147,6 +174,34 @@ public class TitreController : Controller [HttpPost] public IActionResult Edit(TitreAdminDTO model) { + if (!this.ModelState.IsValid) + { + var form = new AdminTitreForm + { + Id = model.Id, + IdArtiste = model.IdArtiste, + Libelle = model.Libelle, + Album = model.Album, + Chronique = model.Chronique, + DateSortie = model.DateSortie, + Duree = model.Duree, + UrlJaquette = model.UrlJaquette, + UrlEcoute = model.UrlEcoute, + Styles = model.Styles, + Artistes = this.artisteRepository.FindAll().Select(a => new SelectListItem + { + Value = a.IdArtiste.ToString(), + Text = a.Nom, + }).ToList(), + AllStyles = this.styleRepository.FindAll().Select(s => new SelectListItem + { + Value = s.IdStyle.ToString(), + Text = s.Libelle, + }).ToList(), + }; + return this.View(form); + } + this.titreAdminService.ModifierTitre(model); return this.RedirectToAction("Index"); } From 80afb9b0bf7122a5d53d30afce064da880f2fd9d Mon Sep 17 00:00:00 2001 From: mirage <119869686+ClementBobin@users.noreply.github.com> Date: Fri, 3 Apr 2026 16:54:46 +0200 Subject: [PATCH 2/2] fix: enable GlobalExceptionFilter in controller options --- Webzine.WebApplication/Program.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Webzine.WebApplication/Program.cs b/Webzine.WebApplication/Program.cs index 4fcbc78..089ee99 100644 --- a/Webzine.WebApplication/Program.cs +++ b/Webzine.WebApplication/Program.cs @@ -30,7 +30,7 @@ try // controllers avec des vues. builder.Services.AddControllersWithViews(options => { - // options.Filters.Add(); + options.Filters.Add(); options.Filters.Add(); })