2009-03-31 17 views
0

MapRouteの問題を扱うSOには、多くの問題があるようです。私はそれらの束を読んだことがありますが、私の実装で間違っていることはわかりません。私は、セットアップ、次のルートを持っている:ASP.Net MVC 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は、/ファイル/インデックス/ 2008/5です。表示アクションではなく、インデックスアクションを取得するのはなぜですか?

編集:ヒバリとして私はURLを変更してもらうことができればちょうど見るために.action = "Display"に第2の経路を変更し、それまだは/ファイル/インデックス/ 2008/5を解決します。

編集2:

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

をそれはまた、/ファイル/インデックス/ 2008/5の解決:私も試してみました。私がアクションに指定したものがIndexにデフォルト設定されていても、それはなぜですか?

+0

実行中のASP.NET MVCのバージョンは何ですか? RouteLinksに問題があったため、リリースの1つでコントローラとアクションを明示的に指定する必要がありました。 –

+0

私はこれがRC1だと確信しています(確かめるにはどうすればいいですか?)。 – gfrizzle

+0

私はそれがあなたのプログラムリストのコントロールパネルの下に表示されると思います。私は、複数のバージョンをインストールすることはできないと思います。 – Ayo

答えて

0

MVC RC 1.0にアップグレードすると、ActionLinkが修正されたように見えますが、RouteLinkは修正されていないようです。したがって私はActionLinkを進めています。私はRouteLinkがなぜ動作したくないのかを知りたいです。