2010-03-26 77 views

回答

5

我会建议保持您的URL尽可能干净,尽可能尝试和使用路由。您应该尝试制作RESTful URI,将信息传递给用户。例如:

www.yourdomain.com/Products/Sports/Clothing 

www.yourdomain.com/Products?Department=Sports&SubDepartment=Clothing 

清洁很多,如果你使用一吨的查询字符串的话,就不会是一个干净的URI和更少的信息传达给用户。

即便如此,我们的团队确实使用jQuery查询字符串进行ajax类型的请求。这是因为这些URI位于我们的标记中,并且不会在浏览器窗口中看到。这有助于保持global.asax的小一点,因为它不会受到大量路线的污染。

+0

整体的好建议。 – 2010-03-27 19:52:01

3

在我的项目中,我们只使用querystrings作为可选值。这主要是过滤,排序和分页列表。可选值在路线中很难处理。

在URL中维护查询字符串非常困难。使用ActionLink和其他路由感知帮助程序时不会呈现它们。

+0

我能理解“可选值有困难的途径来处理”。你能对这句话更清楚吗? – Adrian 2015-01-30 11:20:19

+1

网址将在路径中具有可选值。假设你有可选值“OrderBy”和“FilterBy”。在路径中看起来如何?也许像/ mycontroller/myaction/orderbyprice/filterbyisavailable。如果OrderBy不存在,您的路径将变为/ mycontroller/myaction/{值映射为null}/filterbyisavailable。它可以,如果你在路线的末尾有可选的值。 – 2015-01-30 13:38:56