ASP.Net MVC MapRoute问题

时间:2009-03-31 13:00:09

标签: asp.net-mvc model-view-controller url-routing

在处理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"只是为了看看我是否可以更改网址,仍然解析为/文件/索引/ 2008/5。

编辑2:我也试过了:

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

但这也解析为/ Files / Index / 2008/5。为什么无论我为行动指定什么,它都违反了索引?

1 个答案:

答案 0 :(得分:0)

升级到MVC RC 1.0似乎修复了ActionLink而不是RouteLink。因此,我正在推进ActionLink。我很想知道为什么RouteLink不想工作。