1

URLの一部としてparamsを使用するルートを作成したいと思います。

私が抱えている問題は、デフォルトを作成するときに、予約済みのc#ワードとしてparamsを使用できないことです。

これを回避する方法があるかどうか疑問に思います。(ルートでのパラメーターの使用を参照してください。デフォルトとして使用すると、コンパイラエラーが発生します:式が必要です)

サンプルコードは次のとおりです。

 routes.MapRoute(
            name: "Default",
            url: "{controller}/{action}/{db}/{proc}/{params}",
            defaults: new { controller = "Data", action = "Index", db = UrlParameter.Optional, proc = UrlParameter.Optional, params = UrlParameter.Optional}
        );
4

1 に答える 1

4

MSDNが提案しているように、C#キーワードの前に@記号を付けることで、C#キーワードを使用できます。あなたの場合、@paramsの代わりに使用してくださいparams

MSDNを引用するには

キーワードは、コンパイラにとって特別な意味を持つ事前定義された予約済みの識別子です。プレフィックスとして@が含まれていない限り、プログラムで識別子として使用することはできません。たとえば、@ ifは有効な識別子ですが、ifはキーワードであるため、そうではありません。

この変数を呼び出す必要がある特別な理由はありますparamsか?

于 2012-11-16T15:58:37.887 に答える