Il semble y avoir beaucoup de problèmes sur SO traitant des problèmes MapRoute. J'ai lu beaucoup d'entre eux, mais je ne peux pas voir ce que je fais mal dans ma mise en œuvre. J'ai les itinéraires suivants mis en place:ASP.Net MVC MapRoute problème
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"})
et la RouteLink suivante:
<%=Html.RouteLink("Show", "FilesDisplay", New With {.year = 2008, .month = 5})%>
Cependant, l'URL résultant pour "Show" est/fichiers/Index/2008/5. Pourquoi sélectionne-t-il l'action Index au lieu de l'action Afficher?
Edit: comme un pinson j'ai changé la deuxième route vers .action = "Display"
juste pour voir si je pouvais obtenir l'URL pour changer, et il encore décide de/fichiers/Index/2008/5.
Edit 2: J'ai aussi essayé:
<%=Html.ActionLink("Show", "Display", "Files", New With {.year = 2008, .month = 5}, Nothing)%>
mais cela résout aussi/Files/Index/2008/5. Pourquoi est-ce que peu importe ce que je spécifie pour une action, c'est par défaut Index?
Quelle version d'ASP.NET MVC utilisez-vous? Il y avait un problème avec RouteLinks par lequel vous deviez indiquer explicitement le contrôleur et l'action dans l'une des versions. –
Je crois que c'est RC1 (où puis-je vérifier pour être sûr?). – gfrizzle
Je pense qu'il s'affiche dans votre liste de programmes sous le panneau de contrôle. Je ne pense pas que vous pouvez avoir plus d'une version installée. – Ayo