В представлении
@Html.ActionLink("Edit", "Edit", new { id = 1, year = 1 })
В контроллере
// GET: /Forecasts/Edit/5
public ActionResult Edit(int id, short year)
{
...
}
Он сгенерировал URL-адрес, например
http://<localhost>/controllername/actionname/1?year=1
Я ожидаю, что ссылка на действие сгенерирует URL-адрес, например: http://<localhost>/controllername/actionname/?id=1&year=1
Этот URL-адрес не может быть интерпретирован маршрутизацией MVC по умолчанию, почему URL-адрес не генерируется ожидаемым образом? Спасибо.
Обновление: теперь я обнаружил, что эта проблема возникла из-за опечатки, но приведенный ниже ответ по-прежнему достаточно хорош, поскольку он помогает мне лучше понять, как работает маршрут.