一尘不染

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

c#

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

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

由于class是C#中的关键字,因此无法编译该语句。我想知道如何才能对属性名进行转义,以便对其进行编译。

如果将“ class”属性更改为“ Class”(大写C),则可以对此进行编译。但这并不适合,因为严格的xhtml表示所有属性(和元素)名称都必须小写。


阅读 833

收藏
2020-05-19

共1个答案

一尘不染

您可以在C#中将关键字@放在前面,以将其用作标识符。

var @class = new object();

要引用有关 C#关键字
的MSDN文档:

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

2020-05-19