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

@@ -10,13 +10,22 @@ namespace Webzine.WebApplication.Controllers
private readonly ILogger<AccueilController> _logger;
private readonly IConfiguration _configuration;
/// <summary>
/// Initializes a new instance of the <see cref="AccueilController"/> class.
/// </summary>
/// <param name="logger">Service de journalisation injecté pour enregistrer les événements et les erreurs.</param>
/// <param name="configuration">Service d'injection de configuration pour accéder aux paramètres de l'application.</param>
public AccueilController(ILogger<AccueilController> logger, IConfiguration configuration)
{
_logger = logger;
_configuration = configuration;
this._logger.LogDebug(1, "NLog injected into AccueilController");
}
// GET: AccueilController
/// <summary>
/// Affiche la page d'accueil du webzine, présentant les derniers titres et les titres les plus populaires.
/// </summary>
/// <returns>La vue Index avec le ViewModel contenant les listes de titres à afficher.</returns>
public ActionResult Index()
{
_logger.LogInformation("Arrivée sur la page d'accueil");

View File

@@ -6,18 +6,30 @@ public class ApiController : ControllerBase
{
private readonly ILogger<ApiController> _logger;
/// <summary>
/// Initializes a new instance of the <see cref="ApiController"/> class.
/// </summary>
/// <param name="logger">Service de journalisation injecté pour enregistrer les événements et les erreurs.</param>
public ApiController(ILogger<ApiController> logger)
{
this._logger = logger;
this._logger.LogDebug(1, "NLog injected into VersionController");
}
/// <summary>
/// Endpoint de test pour vérifier que l'API fonctionne correctement. Retourne une chaîne de caractères "Hello World !".
/// </summary>
/// <returns>Une chaîne de caractères "Hello World !".</returns>
[HttpGet]
public string HelloWorld()
{
return "Hello World !";
}
/// <summary>
/// Endpoint de test pour vérifier que l'API fonctionne correctement. Retourne un objet JSON contenant le nom et la version de l'application.
/// </summary>
/// <returns>Un objet JSON avec les propriétés "nom" et "version".</returns>
[HttpGet]
public IActionResult Version()
{

View File

@@ -9,16 +9,21 @@ namespace Webzine.WebApplication.Controllers
// Injection du logger via le constructeur
private readonly ILogger<ArtisteController> _logger;
/// <summary>
/// Initializes a new instance of the <see cref="ArtisteController"/> class.
/// </summary>
/// <param name="logger">Service de journalisation injecté pour enregistrer les événements et les erreurs.</param>
public ArtisteController(ILogger<ArtisteController> logger)
{
_logger = logger;
this._logger.LogDebug(1, "NLog injected into ArtisteController");
}
/// <summary>
/// Prend en paramètre le nom de l'artiste (ex: "fatal-bazooka"), utilise la factory pour trouver l'artiste correspondant, et affiche sa page dédiée.
/// </summary>
/// <param name="nom"></param>
/// <returns></returns>
/// <param name="nom">Le nom de l'artiste à rechercher, formaté en kebab-case (ex: "fatal-bazooka").</param>
/// <returns>La vue de l'artiste avec son ViewModel, ou une redirection vers l'accueil si le nom est vide, ou une erreur 404 si l'artiste n'est pas trouvé.</returns>
[HttpGet("/artiste/{nom}")]
public IActionResult Index(string nom)
{

View File

@@ -7,6 +7,23 @@ namespace Webzine.WebApplication.Controllers
/// </summary>
public class ContactController : Controller
{
// Injection du logger via le constructeur
private readonly ILogger<ContactController> _logger;
/// <summary>
/// Initializes a new instance of the <see cref="ContactController"/> class.
/// </summary>
/// <param name="logger">Service de journalisation injecté pour enregistrer les événements et les erreurs.</param>
public ContactController(ILogger<ContactController> logger)
{
_logger = logger;
this._logger.LogDebug(1, "NLog injected into ContactController");
}
/// <summary>
/// Affiche la page de contact du webzine.
/// </summary>
/// <returns>La vue Index de la page de contact.</returns>
public IActionResult Index()
{
return View();

View File

@@ -19,6 +19,7 @@ public class TitreController : Controller
private readonly List<Artiste> _artistes;
/// <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>