ASP.NET MVC3 Razor - Html.ActionLink样式

3Da*_*ave 33 css razor asp.net-mvc-3

我正在尝试设置动作链接的样式,如下所示:

  <text><p>Signed in as @Html.ActionLink(Context.User.Identity.Name,"Index",new { Controller="Account", @style="text-transform:capitalize;" })</p>
Run Code Online (Sandbox Code Playgroud)

我希望这个呈现为

<p>Signed in as <a href="Index" style="text-transform:capitalize;">MyName</a></p>
Run Code Online (Sandbox Code Playgroud)

但是,产生的是什么

<p>Signed in as <a href="/Account?style=text-transform%3Acapitalize%3B">MyName</a></p>
Run Code Online (Sandbox Code Playgroud)

将样式添加到url中.我究竟做错了什么?

Dan*_*ite 92

这是签名.

public static string ActionLink(this HtmlHelper htmlHelper, 
                                string linkText,
                                string actionName,
                                string controllerName,
                                object values, 
                                object htmlAttributes)
Run Code Online (Sandbox Code Playgroud)

你在做什么是混合valueshtmlAttributes在一起.values用于URL路由.

你可能想要这样做.

@Html.ActionLink(Context.User.Identity.Name, "Index", "Account", null, 
     new { @style="text-transform:capitalize;" });
Run Code Online (Sandbox Code Playgroud)

  • 我很高兴你没有......我觉得这个答案很有用. (17认同)
  • 因为没有阅读intellesense窗口而给我-1000. (4认同)

Ed *_*gne 8

VB示例:

 @Html.ActionLink("Home", "Index", Nothing, New With {.style = "font-weight:bold;", .class = "someClass"})
Run Code Online (Sandbox Code Playgroud)

示例Css:

.someClass
{
    color: Green !important;
}
Run Code Online (Sandbox Code Playgroud)

在我的情况下,我发现我需要!important属性来覆盖site.css a:link css class