Es scheint eine Menge Probleme bei SO zu geben, die sich mit MapRoute-Problemen befassen. Ich habe eine Reihe von ihnen gelesen, aber ich kann nicht sehen, was ich bei meiner Implementierung falsch mache. Ich habe über die folgenden Routen einrichten bekam:ASP.Net MVC MapRoute Problem
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"})
und die folgende Routelink:
<%=Html.RouteLink("Show", "FilesDisplay", New With {.year = 2008, .month = 5})%>
jedoch die resultierende URL für "Show" ist/Files/Index/2008/5. Warum wird die Aktion "Index" anstelle der Aktion "Anzeige" verwendet?
Edit: Als Lerche änderte ich den zweiten Weg zu .action = "Display"
nur um zu sehen, ob ich die URL zu ändern bekommen konnte und es noch beschließt zu/Files/Index/2008/5.
Edit 2: ich auch versucht:
<%=Html.ActionLink("Show", "Display", "Files", New With {.year = 2008, .month = 5}, Nothing)%>
aber das löst auch/Files/Index/2008/5. Warum ist es egal, was ich für eine Aktion vorschlage, ist es standardmäßig Index?
In welcher Version von ASP.NET MVC laufen Sie? Es gab ein Problem mit RouteLinks, bei dem Sie den Controller und die Aktion in einem der Releases explizit angeben mussten. –
Ich glaube, das ist RC1 (wo kann ich überprüfen, um sicher zu sein?). – gfrizzle
Ich denke, es wird in Ihrer Programmliste unter dem Bedienfeld angezeigt. Ich glaube nicht, dass Sie mehr als eine Version installieren können. – Ayo