ASP.Net MVC MapRoute проблема - PullRequest
       10

ASP.Net MVC MapRoute проблема

0 голосов
/ 31 марта 2009

Кажется, на SO много проблем, связанных с проблемами MapRoute. Я прочитал несколько из них, но я не вижу, что я делаю неправильно в моей реализации. У меня настроены следующие маршруты:

routes.MapRoute( _
    "FilesDisplay", _
    "{controller}/{action}/{year}/{month}", _
    New With {.controller = "Files", .action = "Display", .year = "", .month = ""})

routes.MapRoute( _
    "Default", _
    "{controller}/{action}", _
    New With {.controller = "Files", .action = "Index"})

и следующий RouteLink:

<%=Html.RouteLink("Show", "FilesDisplay", New With {.year = 2008, .month = 5})%>

Тем не менее, в результате URL для «Показать» будет / Files / Index / 2008/5. Почему он выбирает действие Index вместо действия Display?

Редактировать: Как жаворонок, я изменил второй маршрут на .action = "Display", просто чтобы посмотреть, смогу ли я изменить URL, и он все еще разрешается в / Files / Index /2008/5.

Редактировать 2: Я также пытался:

<%=Html.ActionLink("Show", "Display", "Files", New With {.year = 2008, .month = 5}, Nothing)%>

но это также разрешается в / Files / Index / 2008/5. Почему независимо от того, что я указываю для действия, по умолчанию используется индекс?

1 Ответ

0 голосов
/ 31 марта 2009

Обновление до MVC RC 1.0, похоже, исправило ActionLink, но не RouteLink. Поэтому я двигаюсь вперед с ActionLink. Хотелось бы знать, почему RouteLink не хочет работать.

...