Question

J'ai un lien html.action pour afficher un lien vers une page de profil de membre semblable à celle-ci: http: / /somesite.com/members/ {nom d'utilisateur}

Lorsque vous utilisez le balisage suivant

<%= Html.ActionLink(r.MemberName, "profile", new { MemberName = r.MemberName } )%>

Je reçois un lien qui ressemble à ceci: http://somesite.com/members?MemberName= {nom d'utilisateur}

Que dois-je changer dans l’aide ActionLink pour obtenir une URL telle que celle-ci:

http://somesite.com/members/ {nom d'utilisateur}

Était-ce utile?

La solution

En supposant que dans vos itinéraires, le jeton de nom d'utilisateur est {nom d'utilisateur} comme vous le montrez, essayez ceci:

<%= Html.ActionLink(r.MemberName, "profile", new { username = r.MemberName } )%>

Autres conseils

Vous devez ajouter la route qui mappe " / members / {MemberName} " avant les autres itinéraires de la table de routage.

Merci pour vos réponses ... Mon itinéraire ne correspond pas au nom de la valeur.

S'assurer simplement que l'url de mon itinéraire correspondait à son bon fonctionnement.

Voici mon code ....

//Global.asax
routes.MapRoute(
    "Profile",
    "members/{membername}",
    new { controller = "Members", action = "Profile", memberName = "" }
);

//In the Controller
public ActionResult Profile(string memberName)
{
  return View();
}

//My Action Link
<%= Html.ActionLink(r.MemberName, "profile", new { memberName = r.MemberName })%>

Merci encore

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top