2016-01-20 1 views
-1

J'ai un contrôleur ASP.NET MVC typique, mais je veux juste changer son itinéraire. La route par défaut est maintenant:Comment modifier l'itinéraire d'un automate ASP.NET MVC?

Blog/{controller}/{action}/{id} 

Je souhaite modifier l'itinéraire d'un contrôleur spécifique à

Blog/Admin/{controller}/{action}/{id}" 

J'ai essayé d'y parvenir en ajoutant la Route , RouteArea et RoutePrefix attributs au contrôleur mais sans succès.

Comment puis-je y parvenir?

+1

Quelle route est enregistré en premier? –

Répondre

1

Ajouter cet itinéraire avant la valeur par défaut

routes.MapRoute(
       name: "BlogAdmin", 
       url: "Blog/Admin/{action}/{id}", 
       defaults: new { controller = "YourSpecificControllerName", action = "Index or other default action name", id= UrlParameter.Optional }); 

Puisque c'est un que vous ne avez pas besoin spécifique {controller} partie dans votre URL. Si vous voulez encore préciser changer l'argument url-"Blog/Admin/YourSpecificControllerName/{action}/{id} "où YourSpecificControllerName est le nom de votre contrôleur. En outre, depuis l'ordre des questions d'enregistrement rote assurez-vous que cette voie enregistrée avant la valeur par défaut un