Wie definiere ich eine catch-all-Strecke für eine ASP.NET MVC-Website?
Habe ich eine news-Seite mit Artikel tagged in Kategorien.
Mein Controller wird als "Kategorie" und diese URL:
http://mysite.com/Category/Sport
geht Sport
Aktion Index
im controller Category
.
Möchte ich, dass die folgenden URLs:
http://mysite.com/Sport/Hockey
http://mysite.com/Sport/Football
http://mysite.com/Science/Evolution
Die Pässe aller der Kategorie der information zur Aktion Index
im controller Category
.
Wie erstelle ich eine catch-all-route, die Griffe alle diese und shuttles Sie zu der Kategorie?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Es ist eine ziemlich gute Antwort auf meine Frage an diese Zeilen hier.
Kannst du es so machen:
und dann in deinem controller:
Nicht, dass jeder die route oben ist, wird für ALLE Strecken (man kann nicht Über Seite etc., wenn Sie angeben, explizite Routen, bevor Sie eines der oben erwähnten).
Könnten Sie allerdings ein benutzerdefiniertes constraint einschränken, die route, um nur die bestehenden Kategorien. So etwas wie:
Denen Sie in Ihrer route wie diese:
In dieser Weise wird es nicht stören Ihren anderen definierten Routen.