Как вы можете указать имя класса css на ActionLinks в Razor? - PullRequest
28 голосов
/ 17 декабря 2010

Следующий код генерирует ошибку:

@Html.ActionLink("Title", "action", new { id=1 }, new { @class = "myCssClass" });

Я пытался использовать @, поскольку class является ключевым словом.Как мне написать это при использовании бритвы?

Редактировать

Проблема была не в том, что знак at, но я не использовал блоки вместе с моим if:

@if (blabla)
    @Html.ActionLink("Title", "action", new { id=1 }, new { @class = "myCssClass" });

Работы:

@if (blabla)
{
    @Html.ActionLink("Title", "action", new { id=1 }, new { @class = "myCssClass" });
}

Up проголосовал за оба ответа, поскольку они заставили меня осознать проблему.

Ответы [ 2 ]

41 голосов
/ 17 декабря 2010

Попробуйте написать что-то вроде:

@(Html.ActionLink("Title", "action", new { id=1 }, new { @class = "myCssClass" }));

Есть хороший пост о Razor, связанный с вашей проблемой: Блог ScottGu

7 голосов
/ 17 декабря 2010

Просто:

@Html.ActionLink("Title", "action", new { id=1 }, new { @class = "myCssClass" })

будет работать в ASP.NET MVC 3 RC2. Бритва умна.

...