ASP.net MVC路由:使用QueryStrings是一种很好的风格吗?
问题描述:
ASP.net MVC中的所有路线是否应遵循“仅限斜线,无QueryString”的理念?ASP.net MVC路由:使用QueryStrings是一种很好的风格吗?
我工作的一个Wiki软件,所以我有这样
/{pageTitle}
/{pageTitle/Edit
/{pageTitle/History
等一切行动,但如果我想控制一个操作的行为是什么路线?有点像
/{pageTitle}?noredirect=true
好还是认为不好的做法?如果是后者,是否有更好的选择?我应该创建单独的路线吗?
/{pageTitle}/NoRedirect
改为?
我认为这是干净的,但话又说回来,我从来没有写过一个复杂的MVC应用程序,将需要通过选择的动作之前:)
答
我相信有没有明确的答案。
但对我来说,在URL的左边部分只有控制器&动作相关的部分,并且在QueryString中具有“可选”参数感觉更自然。
虽然很明显,
-
/{pageTitle}
将显示文章, -
/{pageTitle}/Edit
将编辑条每页, -
/{pageTitle}/History
将显示条每页
/{pageTitle}/NoRedirect
的历史并没有真正按门铃。
但是更明显的是/{pageTitle}?noredirect=true
修改了该行为的行为。
所以我会用/{pageTitle}?noredirect=true
你的情况。