Я зарегистрировал маршрут:отсутствующий параметр маршрутизации
routes.MapRoute(
"Journals",
"Journals/{year}/{month}/{id}",
new {
controller = "Journals",
action = "Get",
year = UrlParameter.Optional,
month = UrlParameter.Optional,
id = UrlParameter.Optional
}
);
Действие:
public ActionResult Get(int? year, int? month, int? id)
Позже в виду (только для проверки):
@Url.Action("Get", "Journals")
@Url.Action("Get", "Journals", new { year = 2013 })
@Url.Action("Get", "Journals", new { year = 2013, month = 4 })
@Url.Action("Get", "Journals", new { year = 2013, month = 4, id = 1 })
И результат есть:
/Journals
/Journals
/Journals/2013/4
/Journals/2013/4/1
Таким образом, второй URL-адрес пропустил параметр. Что не так?
Полезный инструмент для этих ситуаций - отладчик маршрута Фила Хаака: http://haacked.com/archive/2008/03/13/url-routing-debugger.aspx – neontapir