Comment transformer route en URL dans ASP.NET MVC Controller?

StackOverflow https://stackoverflow.com/questions/815845
  •  
  •  | 
  •   ( words)
 Vérifié

Question

Dans une vue, un code comme celui-ci générera l'URL appropriée pour accéder à la méthode de contrôleur de du contrôleur en fonction des itinéraires de votre fichier global.asax.cs.

<%= Html.ActionLink("text", "action", "controller") %>

Ma question est la suivante: comment puis-je réaliser un mappage d'itinéraire à URL similaire en dehors d'une vue, tel qu'un contrôleur? Il n’existe aucun membre HTML de la classe Controller sur lequel appeler ActionLink.

Certaines actions du contrôleur doivent rediriger le navigateur, et je souhaite rediriger vers un contrôleur et l'action sans câbler durement l'URL dans le contrôleur, ce qui se briserait si je changeais la façon dont mes itinéraires étaient mappés. ces URL aux contrôleurs et aux actions

Solution

Ce que vous recherchez, c'est RedirectToAction .

Si vous ne souhaitez que l'URL, utilisez la propriété Url du contrôleur - il s'agit d'un UrlHelper .

Autres conseils

Utilisez le RedirectToAction . méthode sur le contrôleur:

return RedirectToAction( "action", "controller", new { id = redirectID } )
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow