【问题标题】:Problem passing parameters in asp.net mvc2在 asp.net mvc2 中传递参数的问题
【发布时间】:2011-02-03 15:28:33
【问题描述】:

我有以下控制器:

public ActionResult Search(string Name, int?Friend, int? Page)

如果我使用这个 url localhost/users/search/name 但这些不是 localhost/users/search/name/1 和 localhost/users/search/name/1/1 会有效

【问题讨论】:

  • 有什么不好的?您没有得到正确的参数值,或者该方法从未被调用?无论哪种方式,如果您展示了您是如何绘制路线图的,将会有所帮助。
  • 我没有设置自定义路由,当我添加附加参数时出现 404 错误。

标签: asp.net-mvc parameters controllers


【解决方案1】:

你必须定义额外的路线:

routes.MapRoute(
                "UsersSearch",                                              // Route name
                "users/search/{name}/{friend}/{page}",                           // URL with parameters
                new { controller = "Users", action = "Search" }  // Parameter defaults
            );


routes.MapRoute(
                "UsersSearch",                                              // Route name
                "users/search/{name}/{friend}",                           // URL with parameters
                new { controller = "Users", action = "Search" }  // Parameter defaults
            );

【讨论】:

  • 所以默认情况下它接受一个参数,如果你想要额外的参数你必须专门映射它们?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多