Currently, I'm using a strategy found on many blog posts. Basically, the URL contains the page number (e.g. /Users/List/5 will give you the users on page 5 of your paged list of users). However, I'm not running into a situation where one page must list two separate paged lists. How do I go about doing this using ASP.NET MVC? Do I simply provide two url parameters (e.g. /Users/List?page1=1&page2=2)? Is there a better way by using partial views?
Maybe this can help? http://weblogs.asp.net/stephenwalther/archive/2008/09/18/asp-net-mvc-tip-44-create-a-pager-html-helper.aspx
Ignoring routes for just a minute, you'll just keep the state of the 2 different pages in the URL as querystring parameters.
mysite.com/foo?list1page=2&list2page=8
Then you build the data/pagers accordingly. The pager links will just update the url.
You can get creative with routes to create more friendly URLs, but I think querystring params are perfectly acceptable here.
If you use query parameters then the page links in each list have to know about each other in-order to pass both parameters.
If the two lists are independent of each other then you can update them individually using jquery & ajax. Simply place each list in their own div as a partial view.
<div id="list1"><%= Html.RenderPartial ("ListA") %></div>
<div id="list2"><%= Html.RenderPartial ("ListB") %></div>
Lookup ajaxSubmit from the jQuery Form plugin for an easy way to update the lists.