namespace Webzine.WebApplication.Extensions; public static class RouteConfiguration { /// /// Configure les routes de l'application. /// public static void MapCustomRoutes(this IEndpointRouteBuilder endpoints) { // ----------- ARTISTE ----------- // exemple : /artiste/boblechanteurtarpingénial endpoints.MapControllerRoute( name: "TitreDetails", pattern: "artiste/{nom}", defaults: new { controller = "Artiste", action = "Index" }); // ----------- TITRE ----------- // exemple : /titre/5 endpoints.MapControllerRoute( name: "TitreDetails", pattern: "titre/{id}", defaults: new { controller = "Titre", action = "Details" }); // exemple : /titre/style/Rock endpoints.MapControllerRoute( name: "TitresParStyle", pattern: "titres/style/{style}", defaults: new { controller = "Titre", action = "Style" }); // --- ACTIONS POST (LIKE / COMMENT) --- endpoints.MapControllerRoute( name: "TitreLike", pattern: "titre/like", defaults: new { controller = "Titre", action = "Like" }); endpoints.MapControllerRoute( name: "TitreComment", pattern: "titre/comment", defaults: new { controller = "Titre", action = "Comment" }); // ----------- ADMIN ----------- // ARTISTES endpoints.MapControllerRoute( name: "AdminArtistesIndex", pattern: "administration/artistes", defaults: new { area = "Administration", controller = "Artiste", action = "Index" }); // COMMENTAIRES endpoints.MapControllerRoute( name: "AdminCommentairesIndex", pattern: "administration/commentaires", defaults: new { area = "Administration", controller = "Commentaire", action = "Index" }); // STYLES endpoints.MapControllerRoute( name: "AdminStylesIndex", pattern: "administration/styles", defaults: new { area = "Administration", controller = "Style", action = "Index" }); // TITRES endpoints.MapControllerRoute( name: "AdminTitresIndex", pattern: "administration/titres", defaults: new { area = "Administration", controller = "Titre", action = "Index" }); // --- AUTRE PROUTES --- endpoints.MapControllerRoute( name: "areas", pattern: "{area:exists}/{controller=Home}/{action=Index}/{id?}"); endpoints.MapControllerRoute( name: "default", pattern: "{controller=Accueil}/{action=Index}/{id?}"); } }