Comment obtenir le nom d'une action asp.net mvc avec un trait d'union, par exemple, www.domain.com/about-us
où about-us
est le nom de l'acton dans le contrôleur domestique. Avec cette approche, je peux obtenir le nom de l'action comme suit contact-us
, how-to
etc.
Réponses
Trop de publicités?
Jhourlad Estrella
Points
1494
Voici la solution complète du problème pour un projet .Net MVC 5 :
-
Ouvrez le dossier de votre projet App_Start/RouteConfig.cs fichier.
-
Sur votre RegisterRoute modifiez les codes de la manière suivante :
public static void RegisterRoutes(RouteCollection routes) { routes.MapMvcAttributeRoutes(); // <--- add this line to enable custom attribute routes routes.IgnoreRoute("{resource}.axd/{*pathInfo}"); routes.MapRoute( name: "Default", url: "{controller}/{action}/{id}", defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional } ); }
-
Maintenant, ouvrez votre fichier de contrôleur et ajoutez la définition de votre route personnalisée au sommet de votre action comme indiqué ci-dessous :
[Route("about-us")] public ActionResult AboutUs() { return View(); }
Vous devriez maintenant être en mesure d'utiliser votre route personnalisée comme ceci :
http://yourdomain.com/about-us
jainvikram444
Points
4237
Kevin Farrugia
Points
41
Paritosh
Points
5216