Вопрос

Я искал в Интернете подходящее объяснение синтаксиса маршрутизации в ASP.NET MVC Beta 1, но все еще не могу заставить его работать.

Кто-нибудь может объяснить, что мне нужно добавить в мой файл Global.asax.cs, чтобы иметь два поддерживаемых URI для моего сайта:

www.mysite.com/map.aspx (то есть сайт без каких-либо явных параметров / действий для выполнения действия по умолчанию) и

www.mysite.com/map.aspx/search/searchParam1/searchParam2/searchParam3 / (для выполнения поиска)

PS: Тем временем я продолжу работать над этим и сам выложу ответ, если найду его.

Это было полезно?

Решение

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

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

Пример URL: http://www.mysite.com/map .aspx / поиск / собаки / кошки /

Параметры, переданные в SearchController.Search (): params = " / dogs / cats "

Затем можно проанализировать параметры, чтобы обработать результаты поиска.

Однако, на мой взгляд, размещение map.aspx в URL выглядит неправильно, если вы создаете приложение MVC. Ваш URL должен выглядеть следующим образом: http://www.mysite.com/search/

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top