ASP.NET MVCのHtml.ActionLinkにCSSクラスを適用するにはどうすればよいですか?


104

私はVB.NETを使用してASP.NET MVCアプリケーションを構築しており、次のコードを使用してcssクラスをに適用しようとしています。Html.ActionLink

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

しかし、コードを実行すると、次のエラーが表示されます。

コンパイラエラーメッセージ:BC30988:タイプまたは 'With'が必要です。

私はMVCに不慣れで、実際に何をしているのかほとんど手がかりがないので、他の場所の例に基づいたコードを使用しているため、何が問題なのかわかりません。


(文字列、文字列、文字列、オブジェクト)を持つHtml.ActionLinkメソッドにはそのようなシグネチャはありません。
TWK

とにかく、匿名クラス使用せずにこれを行う方法はありますか?
3Dave

回答:


48

それは:

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

VB.netでは、次を使用して匿名タイプを設定します

new with {.class = "tab" }

そして、他の指摘として、3番目のパラメーターはオブジェクトである必要があります(匿名型でもかまいません)。


153

@ewomackは、追加のオブジェクト値が必要でない限り、C#に最適な答えを持っています。私の場合、私は次のようなものを使用してしまいました:

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

18
あなたは、ルート値を必要としない場合も渡すことができますnull:第四引数として@Html.ActionLink("Delete", "DeleteList", "List", null, new { @class = "delete"})
XEC

56

C#では、4番目のパラメーターとしてnullを使用することもできます。

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

nullを追加すると、標準でクリーンなURLリクエストが取得されるため、これは
役に立ちます

33

この構文は、Razorを使用したMVC 3で私に役立ちました。

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

17

これはMVC 5で機能します

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

MVC 5 ActionLinkでパラメーターを使用する場合:@ Html.ActionLink( "リンクのテキスト"、 "アクション"、 "コントローラー名"、new {myParam = "XXX"}、new {@style = "color:black" })
mggSoft

3

VB.NET

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

これにより、CSSクラス「リンク」が連絡先に割り当てられます。

これにより、次のHTMLが生成されます。

<a class="link" href="www.domain.com/Home/ContactUs">Contact Us</a>

0

c#を削除しました...これはvb.netです

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

Vb.netの構文が正しくなく、このシグネチャを持つコンストラクタがありません
Eduardo Molteni

申し訳ありません...デフォルトで...私はc#を取りました..質問をもっと注意深く読んだはずです..
rajesh pillai
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.