Html.TextBox("ParentPassword", "", new { @class = "required" })
что, черт возьми, это @ для @class.





class - это зарезервированное ключевое слово, поэтому вы не можете использовать его в качестве имени переменной.
Оператор @ позволяет обойти это правило. Причина, по которой это делается здесь, заключается в том, что анонимный объект используется для заполнения атрибутов элемента HTML. Допустимое имя атрибута - «class», которое позволяет вам установить класс CSS для элемента.
class - это ключевое слово. Чтобы использовать class в качестве имени переменной / свойства в C#, вы можете добавить к нему @ как @class. В IL, для всех .net, имя переменной / свойства по-прежнему class - @ - это способ, которым вы должны это сделать в C#.
Просто чтобы добавить мои два цента ко всем правильным ответам:
Если вы новичок в C#, но знакомы с VB.NET, вы, вероятно, знаете, что в VB есть соответствующий элемент @. Квадратные скобки [] используются в VB.NET для заключения имени переменной, названной после зарезервированного слова (или ключевого слова). Например:
Dim [String] As String