ASP.NET MVC コントローラー アクションに名前を付けたいのです123games
が、数値が原因で許可されていません。
を使用する必要がありますActionNameAttribute
か?
ASP.NET MVC コントローラー アクションに名前を付けたいのです123games
が、数値が原因で許可されていません。
を使用する必要がありますActionNameAttribute
か?
そうです。C# 言語仕様では、セクション 2.4.2「識別子」に従って、数字で始まる識別子を禁止しています。
識別子開始文字:
- 文字-文字
- _ (アンダースコア文字 U+005F)
数値がないことに注意してください。
つまり、 を使用して、次ActionNameAttribute
のように、数字で始まるアクションを持つルートを作成できます (URL にはそのような制限がないため)。
[ActionName("123games")]
public ActionResult _123Games()
{
// Action code.
}
アンダースコアの使用は、識別子の最初の文字に有効であることに注意してください(上記と同じセクション、特に以下の強調鉱山に従って):
このセクションで示す識別子のルールは、Unicode 標準付属書 15 で推奨されているものと正確に対応していますが、アンダースコアが最初の文字として許可されていることを除きます(C プログラミング言語の伝統と同様)...
そのため、メソッド名 (つまり_123Games
) の先頭としてこれを使用して、C# コード内で URL フラグメントと同じように密接に配置できるようにしました。