2009-04-29 9 views
26

Dans l'une de mes actions de contrôleur, je génère du code XML. Un des attributs de ce XML est un href pour un autre contrôleur et une action, avec quelques paramètres. Le XML devrait ressembler à ceci:Création d'un lien d'action dans un contrôleur

<projects> 
    <project id="42" name="Project X", href="/projects/42"/> 
    <!-- etc. --> 
</projects> 

Cela ne me dérange pas si l'URL est relative ou absolue, mais ma question est la suivante: comment puis-je générer l'URL dans le code du contrôleur, dans un type de sécurité façon? En d'autres termes, comment faire HtmlHelper.ActionLink, mais à partir d'un contrôleur?

Répondre

38

Je l'ai trouvé à l'aide du réflecteur:

string href = Url.Action("DetailsAsXml", new { projectId = item.Id }); 
+1

toujours valide dans ASP.NET base 1.0.x. 'Url' est une propriété de la classe abstraite' Microsoft.AspNetCore.Mvc.ControllerBase' qui implémente 'Microsoft.AspNetCore.Mvc.IUrlHelper'. –

Questions connexes