Frage

Ich habe eine Html.ActionLink, die ich wünsche, einen Link zu einer Mitglieder Profilseite wie folgt angezeigt werden: http: / /somesite.com/members/ {username}

Wenn verwenden Sie das folgende Markup

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

ich einen Link, der wie folgt aussieht: http://somesite.com/members?MemberName= {username}

Was brauche ich in der Action Helfer zu ändern, um eine URL wie folgt zu erreichen:

http://somesite.com/members/ {username}

War es hilfreich?

Lösung

Unter der Annahme, in die Routenberechnung der Benutzername Token {username}, wie Sie zeigen, versuchen Sie dies:

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

Andere Tipps

Sie sollten die Route hinzufügen, die "/ Mitglieder / {} Member" vor anderen Routen in der Routing-Tabelle abbildet.

Danke für beide Ihre Antworten ... Ich habe nicht meine Strecke den Wert Namen entspricht.

Sie einfach sicherstellen, dass meine Route url abgestimmt haben es ausgehalten.

Hier ist mein 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 })%>

Danke nochmal

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top