С учетом следующих два определенных маршруты:MVC3 Маршруты - как обеспечить маршрут с определенным значением имеет приоритет?
routes.MapRoute(name: "CityCategoryPage", url: "{city}-{state}/{categoryName}/__c/", defaults: new { controller = "Home", action = "GeoSubCategories" });
routes.MapRoute(name: "CityStateCategoryResults", url: "{city}-{state}/{categoryName}/{searchTerm}/{pageNumber}/{pageSize}", defaults: new { controller = "Results", action = "SearchCityStateCategory", pageNumber = UrlParameter.Optional, pageSize = UrlParameter.Optional });
Если удалить второй маршрут, я получаю ожидаемое действие увидеть результаты на домашней странице. Однако при наличии второго маршрута я всегда пересылаюсь на страницу результатов.
У меня есть идея, почему это происходит: "_ c" по-прежнему рассматривается как необязательный параметр, который соответствует необязательному условию для второго маршрута, но не уверен, как заставить это работать. Я бы предпочел не добавлять « _c» к URL-адресу - также интересно, есть ли другой способ?
Спасибо.