1

我一直在为需要支持的网站测试一些替代方案,例如

site.com
site.com/Controller/Action/id
site.com/various.aspx
site.com/optionalparameter  <-- these two go to the same controller
site.com/optionalparameter/ <-- these two go to the same controller

我实际上需要验证可选参数是否可以接受,但我可以将它定向到将验证它的控制器。到目前为止,其他规则似乎都有效,但我还不能让单个可选参数正常工作。

url 中的可选参数可以带或不带斜杠“/”(至少不带)。我发现了类似的问题,但它们似乎有“optionalParam/xx/yy”,因此规则有更多参数并且它们似乎工作正常,但这是将非 mvc 站点转换为使用 MVC 路由的一种特殊情况.

我正在尝试做但不起作用的示例。

routes.MapRoute(
    "optionalParamRoute", 
    "{name}",
    new { controller = "Home", action = "Index", name = "" }
);

这可能吗?

4

1 回答 1

0

尝试移动到您的 optionalParamRoute 参数的顶部:

routes.MapRoute(
    "optionalParamRoute", 
    "{name}",
    new { controller = "Home", action = "Index", name = "" }
);

// other routes
于 2012-11-28T08:55:17.900 回答