файл, но для того, чтобы зарегистрировать Маршрут, важно зарегистрироваться сначала Старый маршрут, а затем новый.
у приложение MVC3, в котором нужно будет переписать URL-адрес в виде http: // [сервер] / [город] - [штат] / [некоторый термин] /.
Насколько я понимаю, MVC3 содержит механизм маршрутизации, который использует {controler} / {action} / {id}, который определен в файле Global.asax:
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
"Default", // Route name
"{controller}/{action}/{id}", // URL with parameters
new { controller = "Home", action = "Index", id = UrlParameter.Optional } // Parameter defaults
);
}
Традиционно (в приложениях, отличных от MVC), я использовал бы некоторый вариант перезаписи URL для декодирования URL, напримерhttp://www.myserver.com/City-State/somesearch/ к параметрам строки запроса, которые выглядят примерно так:http://www.myserver.com/city=City&state=State&query=somesearch
Имейте в виду, что этот запрос будет исходить отhttp://www.myserver.com/Home
Может ли это быть достигнуто без указания контроллера ... что-то вроде этого:
routes.MapRoute(
"Results",
"{city}-{state}/{searchTerm}",
new { controller = "Results", action = "Search" }
);
... или действительно ли лучше, чтобы в списке был контроллер?
Как вы справляетесь с этим в среде MVC3?
Благодарю.