Ich habe auf Benutzeranfragen von URLs wie geben:ASP .NET Core: Routing. Verschiedene Kategorien in url auf Anfang
site.com/events/2017/06/wwdc.html
oder häufiger:
site.com/category1/subcategory1/subcategory2/...../subcategoryN/page-title.html
z.B.
site.com/cars/tesla/model-s/is-it-worth-it.html
zu ArticlesController
mit Wirkung Index(string title)
oder so ähnlich.
Zur Kompilierzeit weiß ich nicht, wie viele Segmente ich haben werde. Aber ich weiß, dass URLs mit /{pageTitle}.html
enden. Das Hauptproblem ist, dass das default asp.net Core Routing es mir nicht erlaubt, etwas zu schreiben wie {*}/pageTitle.html
Ist es möglich?
die Route alle Anfragen fangen, nicht nur Dinge wie 'Kategorie/title.html' Das einzige, was mir helfen kann, diese Regel am Ende gesetzt wird ... Dank – mokeev1995
Diese Strecke Ort sein muss das Ende, richtig. Sie können Dinge wie 'category/title.html' filtern, indem Sie einen regulären Ausdruck im Filter anwenden. 'template:" {* query: regex (. + /. + \\. html $)} ",' funktioniert perfekt für Ihre Bedürfnisse;) (Sie können auch meine Antwort verbessern, wenn es gut funktioniert :-p) –
I kann nicht, ich habe keinen Ruf genug ... – mokeev1995