feat: Ajoutez des commentaires de documentation XML à divers modèles et contrôleurs pour une meilleure clarté

This commit is contained in:
mirage
2026-03-06 10:10:42 +01:00
parent d34c7ade13
commit f732e3c2a5
32 changed files with 415 additions and 50 deletions

View File

@@ -13,7 +13,9 @@ namespace Webzine.WebApplication.Areas.Administration.Controllers
{
private readonly ILogger<CommentaireController> _logger;
private readonly List<Commentaire> _commentaires;
/// <summary>
/// Initializes a new instance of the <see cref="CommentaireController"/> class.
/// Initialise une nouvelle instance du <see cref="CommentaireController"/>.
/// Les données sont générées dynamiquement via <see cref="DataFactory"/>.
/// </summary>
@@ -35,7 +37,10 @@ namespace Webzine.WebApplication.Areas.Administration.Controllers
_logger.LogInformation("Données fictives générées avec succès.");
}
// GET: Administration/Commentaires
/// <summary>
/// Affiche la liste des commentaires dans la vue Index.
/// </summary>
/// <returns>>La vue Index avec le ViewModel contenant la liste des commentaires.</returns>
public ActionResult Index()
{
// Création de données "bouchon" (mock) pour tester l'affichage
@@ -78,7 +83,11 @@ namespace Webzine.WebApplication.Areas.Administration.Controllers
}
// GET: Administration/Commentaires/Delete/5
/// <summary>
/// Affiche la vue de confirmation de suppression d'un commentaire, en récupérant les détails du commentaire à supprimer à partir de l'identifiant fourni.
/// </summary>
/// <param name="id">L'identifiant du commentaire à supprimer.</param>
/// <returns>La vue de confirmation de suppression avec le ViewModel contenant les détails du commentaire à supprimer, ou une réponse NotFound si le commentaire n'existe pas.</returns>
public ActionResult Delete(int id)
{
var commentaire = _commentaires
@@ -99,7 +108,12 @@ namespace Webzine.WebApplication.Areas.Administration.Controllers
return View(vm);
}
// POST: Administration/Commentaires/Delete/5
/// <summary>
/// Traite la confirmation de suppression d'un commentaire. En cas de succès, redirige vers la liste des commentaires. En cas d'erreur, affiche à nouveau la vue de confirmation avec le message d'erreur.
/// </summary>
/// <param name="id">L'identifiant du commentaire à supprimer.</param>
/// <param name="model">Le ViewModel contenant les détails du commentaire à supprimer, utilisé pour afficher les informations en cas d'erreur.</param>
/// <returns>Redirection vers la liste des commentaires en cas de succès, ou la vue de confirmation avec le message d'erreur en cas d'échec.</returns>
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult Delete(int id, CommentaireDeleteViewModel model)

View File

@@ -16,6 +16,7 @@ public class TitreController : Controller
/// <summary>
/// Initializes a new instance of the <see cref="TitreController"/> class.
/// Initialise une nouvelle instance du <see cref="TitreController"/>.
/// Les données sont générées dynamiquement via <see cref="DataFactory"/>.
/// </summary>
@@ -37,6 +38,10 @@ public class TitreController : Controller
_logger.LogInformation("Données fictives générées avec succès.");
}
/// <summary>
/// Affiche la liste des titres dans la vue Index.
/// </summary>
/// <returns>La vue Index avec le ViewModel contenant la liste des titres.</returns>
public ActionResult Index()
{
var model = _titres.Select(t => new AdminTitreList
@@ -54,6 +59,10 @@ public class TitreController : Controller
return View(model);
}
/// <summary>
/// Affiche le formulaire de création d'un nouveau titre dans la vue Create.
/// </summary>
/// <returns>La vue Create avec le ViewModel contenant les listes déroulantes pour les artistes et les styles.</returns>
public ActionResult Create()
{
var model = new AdminTitreForm
@@ -74,6 +83,12 @@ public class TitreController : Controller
return View(model);
}
/// <summary>
/// Traite la soumission du formulaire de création d'un nouveau titre. Actuellement, cette méthode est un stub qui redirige vers l'index sans effectuer de logique de création réelle.
/// </summary>
/// <param name="collection">Le formulaire soumis contenant les données du nouveau titre. Actuellement, ce paramètre n'est pas utilisé.</param>
/// <returns>Redirige vers l'action Index après la soumission du formulaire. En cas d'erreur, retourne la vue Create pour permettre à l'utilisateur de corriger les données.</returns>
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult Create(IFormCollection collection)
@@ -88,6 +103,11 @@ public class TitreController : Controller
}
}
/// <summary>
/// Affiche le formulaire de modification d'un titre existant dans la vue Edit, en préremplissant les champs avec les données du titre sélectionné. Les listes déroulantes pour les artistes et les styles sont également remplies pour permettre à l'utilisateur de modifier ces associations.
/// </summary>
/// <param name="id">L'identifiant du titre à modifier, utilisé pour récupérer les données du titre à partir de la liste des titres générés.</param>
/// <returns>La vue Edit avec le ViewModel contenant les données du titre à modifier, ainsi que les listes déroulantes pour les artistes et les styles. En cas d'erreur, retourne une réponse NotFound si le titre n'existe pas.</returns>
public ActionResult Edit(int id)
{
var titre = _titres.First(t => t.IdTitre == id);
@@ -123,6 +143,12 @@ public class TitreController : Controller
return View(model);
}
/// <summary>
/// Traite la soumission du formulaire de modification d'un titre existant. Actuellement, cette méthode est un stub qui redirige vers l'index sans effectuer de logique de modification réelle.
/// </summary>
/// <param name="id">L'identifiant du titre à modifier, utilisé pour identifier le titre à mettre à jour. Actuellement, ce paramètre n'est pas utilisé dans la logique de traitement.</param>
/// <param name="collection">Le formulaire soumis contenant les données modifiées du titre. Actuellement, ce paramètre n'est pas utilisé dans la logique de traitement.</param>
/// <returns>Redirige vers l'action Index après la soumission du formulaire. En cas d'erreur, retourne la vue Edit pour permettre à l'utilisateur de corriger les données.</returns>
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult Edit(int id, IFormCollection collection)
@@ -137,6 +163,11 @@ public class TitreController : Controller
}
}
/// <summary>
/// Affiche la vue de confirmation de suppression d'un titre, en récupérant les détails du titre à supprimer à partir de l'identifiant fourni. Le ViewModel contient les informations essentielles du titre, telles que le libellé et le nom de l'artiste, pour permettre à l'utilisateur de confirmer la suppression.
/// </summary>
/// <param name="id">L'identifiant du titre à supprimer, utilisé pour récupérer les données du titre à partir de la liste des titres générés.</param>
/// <returns>La vue de confirmation de suppression avec le ViewModel contenant les détails du titre à supprimer, ou une réponse NotFound si le titre n'existe pas.</returns>
public ActionResult Delete(int id)
{
var titre = _titres.First(t => t.IdTitre == id);
@@ -151,6 +182,11 @@ public class TitreController : Controller
return View(model);
}
/// <summary>
/// Traite la confirmation de suppression d'un titre. En cas de succès, redirige vers la liste des titres après avoir supprimé le titre de la liste. En cas d'erreur, affiche à nouveau la vue de confirmation avec le message d'erreur.
/// </summary>
/// <param name="model">Le ViewModel contenant les détails du titre à supprimer, utilisé pour identifier le titre à supprimer et pour afficher les informations en cas d'erreur.</param>
/// <returns>Redirection vers la liste des titres en cas de succès, ou la vue de confirmation avec le message d'erreur en cas d'échec.</returns>
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult Delete(AdminTitreDelete model)