如何在CSS.NET MVC中将CSS类应用于Html.ActionLink?

How do I apply a CSS class to Html.ActionLink in ASP.NET MVC?

我正在使用VB.NET构建ASP.NET MVC应用程序,并且正在尝试使用以下代码将CSS类应用于Html.ActionLink

1
<%=Html.ActionLink("Home","Index","Home", new {@class ="tab" })%>

但是,当我运行代码时,收到以下错误:

Compiler Error Message: BC30988: Type or 'With' expected.

我是MVC的新手,实际上我不太了解自己在做什么,所以我在其他地方使用基于示例的代码时,看不到那里出了什么问题。


@ewomack为C#提供了一个很好的答案,除非您不需要额外的对象值。 就我而言,我最终使用了类似于以下内容的东西:

1
2
@Html.ActionLink("Delete","DeleteList","List", new object { },
new { @class ="delete"})


在C#中,它也可以使用null作为第四个参数。

1
@Html.ActionLink("Front Page","Index","Home", null, new { @class ="MenuButtons" })


它是:

1
<%=Html.ActionLink("Home","Index", MyRouteValObj, new with {.class ="tab" })%>

在VB.net中,您可以使用设置匿名类型

1
new with {.class ="tab" }

并指出,您的第三个参数应该是一个对象(也可以是匿名类型)。


此语法在Razor的MVC 3中为我工作:

1
@Html.ActionLink("Delete","DeleteList","List", new { ID = item.ID, ListID = item.id }, new {@class="delete"})

这适用于MVC 5

1
@Html.ActionLink("LinkText","ActionName", new { id = item.id }, new { @class ="btn btn-success" })


在VB.NET中

1
<%=Html.ActionLink("Contact Us","ContactUs","Home", Nothing, New With {.class ="link"})%>

这会将css类"链接"分配给"联系我们"。

这将生成以下HTML:

1
Contact Us

删除了c#...这是vb.net

1
<%=Html.ActionLink("Home","Index","Home", New With {.class ="tab"}, Nothing)%>