Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

When to use a routing rule vs query string parameters with asp.net mvc

We're considering moving forward with a ASP.NET MVC project and the subject of routing versus parameters came up.

Seeing as how you can easily set up either or a combination of both in ASP.NET MVC, are there any considerations that I should be aware of when using one or the other?

like image 297
mwright Avatar asked Mar 26 '10 20:03

mwright


2 Answers

I would recommend keeping your URL's as clean as possible and to try and use routes whenever possible. You should try and make RESTful URI's that will convey information to the user. For example:

www.yourdomain.com/Products/Sports/Clothing

is a lot cleaner than

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

If you use a ton of query strings then it won't be a clean URI and less information is conveyed to the user.

With that said, our team does use query strings for ajax type requests using jquery. This is because these URI's are in our markup and won't be seen in the browser window. This has helped keep our global.asax a little smaller since it won't get polluted with a ton of routes.

like image 61
amurra Avatar answered Oct 05 '22 08:10

amurra


At my project we only use querystrings for optional values. Thats mostly filtering, sorting and paging lists. Optional values are difficult to handle in a route.

Its much harder to maintain a querystring in the URL. They are not rendered when using ActionLink and other routing aware helpers.

like image 36
Mathias F Avatar answered Oct 05 '22 09:10

Mathias F