Mvc 3-Wie, um eine Liste aller verfügbaren Strecken?
Wie funktioniert:
@Html.ActionLink("MyText","Index","Home")
Übersetzt:
<a href="/Home">MyText</a>
In der Erwägung, dass, bevor es gedruckt wurde
<a href="/Home/Index">MyText</a>
Nach dem ich jetzt eine Standard-Aktion für alle controller via:
routes.MapRoute(
"DefaultActionToIndex",
"{controller}/{action}/{id}",
new { action = "Index", id = UrlParameter.Optional });
Scheint es mir, dass die helper-Methode bietet mehr als drucken, was übergeben wurde, aber in der Lage ist zu beheben die route Wörterbuch und herauszufinden, dass "Index" ist nicht nötig, da es war als Standard festlegen.
Die Frage ist, wie?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Routing funktioniert in beide Richtungen, ankommende Anfragen und der URL-generation, es testet die Strecken in
System.Web.Routing.RouteTable.Routes
(in der Reihenfolge), mit der die Werte (in diesem Fall{ controller = "Home", action = "Index" }
), und verwendet die erste route, die passt. Wenn für einen parameter ein default-Wert, und der bereitgestellte Wert gleich dem default-Wert, es ist nicht enthalten in der URL.