Réécriture d'URL dans .Net MVC
Je me demandais quelle est la meilleure façon de traiter les URL dans MVC. Par exemple, dans mon application j'ai un PageController
pouvez faire un lien vers /website/Page/Index/3
ou /website/Page/home
. Le menu est construit dynamiquement avec Html.ActionLink() et T4MVC basé sur l'url entrantes donc je n'ai rien codé en dur.
Maintenant ce que je veux faire est de pointer mon url et les liens vers quelque chose de plus SEO friendly comme, par exemple, /website/our-company/
et il peut aussi avoir des enfants comme /website/our-company/location/
ou /website/our-company/employees/
. Vous obtenez l'idée.
Toutes mes Pages sont enregistrées dans la BD et j'ai FriendlyUrl
et parentId
propriétés dans mon objet.
Quelle est la meilleure façon de le faire?
source d'informationauteur VinnyG
Vous devez vous connecter pour publier un commentaire.
Ok j'ai pris un coup d'oeil à http://www.asp.net/learn/mvc/tutorial-23-cs.aspx et je l'ai eu à travailler. Plus simple que je ne le pensions...
Mon parcours :
Et maintenant mon contrôleur :
Et voici comment j'ai rendu un lien (mon menu exemple) :
Fonctionne parfaitement à mes besoins! Si vous avez des questions ou des commentaires, ne vous gênez pas! Je ne suis pas sûr que c'est la meilleure façon de le faire, mais je suis heureux avec elle!
Noter que l'itinéraire ordre est important et aussi, si vous ne mettez pas la valeur par défaut et sont dans une page où url2 = quelque chose (site/section/page), alors tous les vous lien pointera vers site/newsection?url2=page m'a fallu un moment pour comprendre pourquoi que url2 param était là, mais maintenant c'est tout droit!