ASP.NET MVC может генерировать элементы HTML, например @Html.ActionLink(), с помощью помощников HTML @Html.BeginForm()и т. Д.
Я знаю, что могу указать атрибуты формы, создав анонимный объект, и передать этот объект для параметра (в данном случае четвертого), htmlAttributesуказав idдля элемента:
Html.BeginForm("Foo", "Bar", FormMethod.Post, new { id = "MyForm"})
Но как насчет classатрибута? Очевидно, это не работает:
Html.BeginForm("Foo", "Bar", FormMethod.Post, new { class = "myclass"})
Поскольку это просто генерирует случайные синтаксические ошибки, когда запрашивается мое представление, потому что оно ожидает чего-то другого после встречи с ключевым словом C # class.
Я также попробовал:
new { _class = "myclass"}
и
new { class_ = "myclass"}
Но они также не работали, поскольку подчеркивания заменяются черточками .
Я знаю, что могу с таким же успехом написать элементы HTML вручную или обернуть форму внутри a <div class="myClass">, но мне все равно было бы интересно узнать, как это должно быть сделано.