1

我想创建一个使用参数作为 URL 一部分的路由。

我遇到的问题是当我创建默认值时,我不能使用 params 作为其保留的 c# 字。

想知道是否有办法解决这个问题。(请参阅路由中参数的使用,当用作默认值时,我得到一个编译器错误:预期表达式)

这是示例代码:

 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# 关键字。在您的情况下,请使用@params而不是params.

引用 MSDN

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

是否有任何特殊原因需要调用此变量params

于 2012-11-16T15:58:37.887 回答