如何使用C#关键字作为属性名称?

时间:2009-01-07 17:40:56

标签: c# .net asp.net-mvc

使用asp.net MVC我想在视图中执行此操作:

<%= Html.TextBox("textbox1", null, new { class="class1" }) %>

此语句无法编译,因为class是C#中的关键字。我想知道如何逃避属性名称,以便编译。

如果我将“class”属性更改为“Class”(大写C),则可以编译它。但这不合适,因为严格的xhtml说所有属性(和元素)名称必须是小写的。

1 个答案:

答案 0 :(得分:121)

您可以在C#中使用关键字作为标识符,方法是在其前面加上@ infront。

var @class = new object();

引用C# Keywords上的MSDN文档:

  

关键字是预定义的,具有特殊的保留标识符   对编译器的意义。它们不能用作您的标识符   程序,除非它们包含 @ 作为前缀。例如, @if 是有效的   标识符,但如果不是因为if是关键字。