J'ai défini l'itinéraire suivant pour un blog simple.Problème lors de l'utilisation d'Url.Action() lors de la création d'URL conviviales et "hackables"
routes.MapRoute(
"Blog",
"blog/{year}/{month}/{day}",
new { controller = "Blog", action = "Index" },
new { year = @"\d{4}", month = @"\d{2}", day = @"\d{2}" }
);
L'URL doit être en mesure "hackable" pour accomplir ce qui suit:
- http://abc.com/blog/2010 -> montre tous messages en 2010
- http://abc.com/blog/2010/01 -> montre tous les messages en Janvier 2010
- http://abc.com/blog/2010/01/25 -> affiche tous les articles de janvier 25th, 2010
J'ai créé un contrôleur qui gère assez bien cette action. Cependant, j'ai de la difficulté à créer des liens dans mes vues en utilisant Url.Action()
.
Par exemple, ce ...
var d = new DateTime(2010, 1, 25);
Url.Action("Index", "Blog", new { year=d.Year, month=d.Month, day=d.Day});
... génère une URL comme ça ressemble à ceci:
Je préférerais que pour générer un url qui ressemble aux urls de la liste ci-dessus.
Est-il possible que je peux utiliser Url.Action()
ou Html.ActionLink()
pour générer urls dans le format que je désire?
Vous l'avez cloué. Merci pour votre réponse. Il fonctionne comme un charme. – jessegavin