gpt4 book ai didi

asp.net-mvc - ASP.NET MVC : url routing vs querystring

转载 作者:行者123 更新时间:2023-12-01 18:42:05 25 4
gpt4 key购买 nike

我有一个像 /Comments/Search/3 这样路由的页面我搜索并显示线程“3”的所有评论。

我正在添加一个排序功能(按日期、作者等)。处理它的最佳方法是什么? /Comments/Search/3/Sort/Author/Comments/Search/3?sort=author ?

如何自动处理查询字符串 sort=author 作为 MVC 中的参数?

谢谢

最佳答案

我更喜欢:/Comments/Search/3?sort=author。查询字符串是传递编程参数的好地方,尤其是在参数(如本例中)对于 SEO 目的不重要的情况下。如果该参数作为搜索词具有某种语义意义,则第一个 URL 会更好。

在 Controller 方法中,您可以使用以下内容:

public ActionResult Search(int id, string sort)

ASP.NET MVC 将自动将查询字符串值连接到您的方法的参数。

使用以下路线
routes.MapRoute(
"Default", // Route name
"{controller}/{action}/{id}", // URL with parameters
new { controller = "Comments", action = "Search", id = "" } // Parameter defaults
);

/Comments/Search/3?sort=author 将调用 Search(3, "author")

/Comments/Search/3 将调用 Search(3, null)

请记住, id 是强制性的,因此此 url 将失败:
/评论/搜索

关于asp.net-mvc - ASP.NET MVC : url routing vs querystring,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/968904/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com