【问题标题】:RedirectToAction without querystring MVC没有查询字符串 MVC 的 RedirectToAction
【发布时间】:2011-03-17 08:19:26
【问题描述】:

我的 mvc 应用中有一些代码用于执行重定向。

return RedirectToAction("Details", new { slug = viewModel.Farm.Slug });

这个重定向到 url

/Farm/Details?slug=the-farm-name

我想做的是这个

/Farm/Details/the-farm-name

有没有简单的方法来做到这一点?

【问题讨论】:

    标签: asp.net-mvc


    【解决方案1】:

    在 global.asax 的 Routes Table 中定义与上述匹配的路由。

    【讨论】:

    • 我认为它会是这样的......整个路由的事情需要一点时间来适应。
    • @James:帮助我记住路由是双向的:您可以提供一个 URL 并返回参数,您可以给它们提供参数并生成一个网址。如果没有可以生成 URL 的路由,则回退到查询字符串hackery。
    【解决方案2】:

    您正在使用默认路由,您已在其中定义了一个参数“id”。 更改您的代码以返回

    RedirectToAction("Details", new {id = viewModel.Farm.Slug });

    或添加新路线。

    【讨论】:

      猜你喜欢
      • 2016-08-25
      • 2012-08-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-03-23
      • 1970-01-01
      • 2012-04-01
      • 2012-11-20
      相关资源
      最近更新 更多