【问题标题】:ASP.net MVC Routing: Is it good style to use QueryStrings?ASP.net MVC 路由:使用 QueryStrings 是一种很好的风格吗?
【发布时间】:2010-02-17 11:35:10
【问题描述】:

ASP.net MVC 中的所有路由都应该遵循“只有斜杠,没有 QueryString”的理念吗?

我正在开发一个 Wiki 软件,所以我有类似的路线

/{pageTitle}
/{pageTitle/Edit
/{pageTitle/History

等等。对于所有动作,但是如果我想控制动作的行为怎么办?有点像

/{pageTitle}?noredirect=true

好的还是被认为是不好的做法?如果是后者,有没有更好的选择?我应该创建一个单独的路线

/{pageTitle}/NoRedirect

改为?

我认为它很干净,但话说回来,我之前从未编写过需要将选项传递给操作的复杂 MVC 应用程序 :)

【问题讨论】:

    标签: .net asp.net-mvc routing


    【解决方案1】:

    我相信对此没有明确的答案。

    但对我来说,在 URL 的左侧部分包含控制器和操作相关部分并在 QueryString 中包含“可选”参数感觉更自然。

    虽然很明显;

    • /{pageTitle} 会显示文章,
    • /{pageTitle}/Edit 将编辑文章,
    • /{pageTitle}/History 将显示该文章的历史

    /{pageTitle}/NoRedirect 并没有真正敲响警钟。
    但更明显的是/{pageTitle}?noredirect=true 修改了动作的行为。

    所以在你的情况下我会选择/{pageTitle}?noredirect=true

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-11-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-04-06
      • 2013-09-03
      相关资源
      最近更新 更多