2012-04-28 32 views
0

私の_layout.cshtmlでは、私はそのようなメニューを追加したいと思います:actionLinkの_layout.cshtmlでパラメータを渡す方法asp.net MVC 3

  • @Html.ActionLink("Profile", "Details", "User", new {e_id ="[email protected]")
  • 私は
    @Context.User.Identity.Name
    をe_idに渡したいと思います。私はその方法でそれを渡すことができますか?それ以外の場合はどうすればいいですか?私はそれのようにハードコード:
  • @Html.ActionLink("Profile", "Details", "User", new { e_id="[email protected]"})
  • それは私のようなURLを与えるユーザのコントローラの詳細action.whenで私をリダイレクトしません:
    http://localhost:48096/User/[email protected]
    それはうまく動作します。この

    @Html.ActionLink("Profile", "Details", "User", new { e_id="Context.User.Identity.Name},null) 
    

    のような事前のおかげで

    答えて

    0

    使用して、それはあなたがHTMLのlink要素に属性を任意のカスタムを渡したい場合は、あなたがそれと5番目のパラメータを置き換えることができ、この過負荷

    public static MvcHtmlString ActionLink(
        this HtmlHelper htmlHelper, 
        string linkText, 
        string actionName, 
        string controllerName, 
        Object routeValues, 
        Object htmlAttributes 
    ) 
    

    を使用しています

    例:

    @Html.ActionLink("Profile", "Details", "User", new { e_id="yourvalue"},new {@class="myCSsClassName"}) 
    
    +0

    ありがとう@Shyju、私はどのように私のrouteValues、HtmlAttributesを取得する必要がありますか?もう少し詳しく説明してください.... –

    +0

    Thanks @ Shyju、私のactionLinkは次のようになりました:<

  • @ Html.ActionLink( "Profile"、 "Details"、 "User"、new {e_id = Context.User.Identity。名前}、null)
  • +0

    @AwladLiton問題を修正しましたか? – Shyju

    関連する問題