我想将我的 ASP.NET MVC 控制器操作命名为,123games
但由于数字,它不允许我这样做。
我需要使用ActionNameAttribute
吗?
我想将我的 ASP.NET MVC 控制器操作命名为,123games
但由于数字,它不允许我这样做。
我需要使用ActionNameAttribute
吗?
是的你是。根据第 2.4.2 节“标识符”,C# 语言规范禁止以数字开头的标识符:
标识符开始字符:
- 字母字符
- _(下划线字符 U+005F)
请注意缺少任何数值。
也就是说,您可以使用ActionNameAttribute
来创建一个带有以数字开头的操作的路由(因为 URL 没有这样的限制),如下所示:
[ActionName("123games")]
public ActionResult _123Games()
{
// Action code.
}
请注意,使用下划线对标识符的第一个字符有效(根据与上面相同的部分,特别是在下面,强调我的):
本节中给出的标识符规则与 Unicode 标准附件 15 推荐的规则完全一致,除了下划线允许作为初始字符(就像 C 编程语言中的传统字符一样)...
因此,我使用它作为方法名称的开头(即_123Games
),以使其在 C# 代码中与 URL 片段一样紧密对齐。