У меня определены следующие маршруты:
routes.MapRoute("CategoryList_CountryLanguage", "Categories/{id}/{urlCategoryName}/{country}/{language}",
new {
controller = "Categories",
action = "Details",
});
routes.MapRoute("CategoryList", "Categories/{id}/{urlCategoryName}",
new {
controller = "Categories",
action = "Details",
country = "US",
language = "EN"
});
, и я генерирую ссылки, используя:
@Html.ActionLink("desc", "Details", "Categories", new { id = item.Id, urlCategoryName = item.UrlFriendlyName}, null)
, и сгенерированные URL-адреса имеют вид: / Categories /id / friendly-name
Я хочу создать: / Категории / id / friendly-name / US / EN
без указания страны иязык в вызове ActionLink, я не могу использовать значения по умолчанию, как это?Простой обходной путь - указать эти параметры в вызовах ActionLink, но я хотел бы избежать этого, если это возможно.Я надеюсь, что первый маршрут ожидает значения, указанные в URL-адресе, в то время как второй имеет значения по умолчанию, если он не включен в URL-адрес, и будет использовать его для создания новых URL-адресов, пока не повезло, возможно ли это?