2012-01-18 3 views
0

Voici comment je produis une URL dans ASP.NET MVC actuellement:ASP.NET MVC: Générer des URL sans spécifier le actionName

Url.Action("Index", new { page = 2 }) 

Dans les cadres précédents, je l'ai utilisé, il y avait des fonctions spéciales d'URL qui a créé un url basé sur l'URL actuelle, ne modifiant que les parties que vous vouliez changer. Ceci est en Pylons:

{{ url.current(page=2) }} 

Ce serait utile avec une vue partielle, où la vue partielle peut montrer une liste d'éléments, mais pas nécessairement savoir quel contrôleur ils appartiennent. Deux questions - pourquoi une fonctionnalité si évidente manque-t-elle à ASP.NET MVC, et existe-t-il une autre façon commune de faire ce que j'ai mentionné avec des vues partielles? Peut-être que j'approche des vues partielles complètement faux?

Répondre

4

Pourquoi une telle fonctionnalité manquante de ASP.NET MVC

évidemment utile Ce que vous fait penser que cette fonctionnalité est absente:

string url = Url.Action(null, new { page = 2 }); 

ou:

string url = Url.RouteUrl(new { page = 2 }); 
+0

Je ne savais pas que vous pouviez passer null, mais cela ne résout toujours pas mon problème, car vous avez spécifié tous les route argu autrement, il ne les inclut pas. Donc, si j'ai/search? S = billy, il baisse simplement le billy. Cela m'oblige à inclure la chaîne de recherche dans ma vue partielle de la liste, quand idéalement la liste ne devrait pas être concernée par l'URL. – NoPyGod

+0

La réponse à cette question est ici si quelqu'un en a besoin http://stackoverflow.com/questions/8919851/asp-net-mvc-generate-url-based-off-of-the-current-url-and-maintain-querystring – NoPyGod

+0

@NoPyGod S'il vous plaît vérifier la question que vous avez lié sur le commentaire ci-dessus, j'ai ajouté une réponse à ce que vous pouvez trouver utile. http://stackoverflow.com/questions/8919851/generate-url-based-off-of-the-current-url-and-maintain-querystring/21029530 – Iravanchi