使用asp.net MVC我想在视图中执行此操作:
<%= Html.TextBox("textbox1", null, new { class="class1" }) %>
此语句无法编译,因为class是C#中的关键字。我想知道如何逃避属性名称,以便编译。
如果我将“class”属性更改为“Class”(大写C),则可以编译它。但这不合适,因为严格的xhtml说所有属性(和元素)名称必须是小写的。
答案 0 :(得分:121)
您可以在C#中使用关键字作为标识符,方法是在其前面加上@ infront。
var @class = new object();
引用C# Keywords上的MSDN文档:
关键字是预定义的,具有特殊的保留标识符 对编译器的意义。它们不能用作您的标识符 程序,除非它们包含 @ 作为前缀。例如, @if 是有效的 标识符,但如果不是因为if是关键字。