asp.net mvc - vue - Comment encoder correctement des liens vers des URL externes dans MVC Razor




web page razor (4)

Vous n'avez pas besoin d'utiliser @Html.ActionLink pour cela. Utilisez simplement un tag A simple:

<a href="http://subdomain.mydomain.com/SomeSite">SomeSite</a>

Html.ActionLink est spécifiquement pour générer des liens vers des actions définies dans les contrôleurs MVC, dans la même application . Comme vous créez un lien vers une URL absolue, vous n'avez besoin d'aucune des fonctionnalités Html.ActionLink par Html.ActionLink .

Cette vue suppose d'afficher une liste de liens hypertexte, chacun pointant vers une URL externe. L'objectif est que l'utilisateur clique sur l'un de ces liens et que son navigateur ouvre un nouvel onglet avec l'URL sélectionnée. Actuellement, j'ai le balisage suivant:

@Html.ActionLink("SomeSite", "http://subdomain.mydomain.com/SomeSite")

Ce balisage produit:

http://localhost:58980/AccessInstance/http%3a/subdomain.mydomain.com/SomeSite

au lieu de :

http://subdomain.mydomain.com/SomeSite

Que puis-je changer dans mon balisage pour que ce travail fonctionne comme je le souhaite?


Vous devez prendre en compte votre RouteConfiguration.

routes.MapRoute (nom: "Default", url: "{controller} / {action}"

car vous spécifiez le lien d'action en tant que lien complet que vous souhaitez rediriger. Je vous recommande d'utiliser la réponse @rossipedia parce que vous pouvez faire des choses délicates comme mettre un span dans le lien


Bien qu'un ViewBag soit surutilisé et ne soit pas le meilleur choix la plupart du temps, c'est ce que j'avais fait en héritant de l'application mvc de quelqu'un d'autre pour corriger rapidement une URL que je devais rediriger avec un paramètre querystring dynamique changeant

  <a target="_parent" href="http://localhost:56332/services/@ViewBag.factory">View Service</a>

Ici pour afficher le lien qui est cliquable dans la page d'index

     <td>         
        @Html.ActionLink(item.FileName, "../Uploads/Catalogue/"+item.FileName)
    </td>




html-helper