Question

J'ai parcouru le Web à la recherche d'une explication décente de la syntaxe de routage dans la version bêta 1 d'ASP.NET MVC, mais je ne parviens toujours pas à la faire fonctionner.

Quelqu'un peut-il m'expliquer ce que j'ai besoin de mettre dans mon fichier Global.asax.cs pour que deux URI soient pris en charge sur mon site:

www.monsite.com/map.aspx (c'est-à-dire le site sans paramètres / actions explicites pour l'exécution de l'action par défaut), et

www.monsite.com/map.aspx/search/searchParam1/searchParam2/searchParam3 / (pour effectuer une recherche)

PS: En attendant, je continuerai à travailler sur ce projet et posterai moi-même la réponse si je la trouve.

Était-ce utile?

La solution

routes.MapRoute("Default", "map.aspx", new { controller = "DefaultController", action = "DefaultAction" });

routes.MapRoute("Search", "map.aspx/search/{*params}", new { controller = "SearchController", action = "Search" } );

Exemple d'URL: http://www.mysite.com/map .aspx / search / dogs / cats /

Paramètres transmis à SearchController.Search (): params = "/ dogs / cats"

Vous pouvez ensuite analyser les paramètres pour traiter les résultats de votre recherche.

Cependant, à mon avis, le fait de placer map.aspx dans l'URL semble incorrect si vous construisez une application MVC. Votre URL devrait ressembler à http://www.mysite.com/search/

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top