2008-11-15 16 views
13

Actualmente, estoy usando una estrategia que se encuentra en muchas publicaciones de blog. Básicamente, la URL contiene el número de página (por ejemplo,/Users/List/5 le dará los usuarios en la página 5 de su lista de usuarios paginada). Sin embargo, no me encuentro en una situación en la que una página debe listar dos listas paginadas separadas. ¿Cómo hago esto usando ASP.NET MVC? ¿Proporciono simplemente dos parámetros de URL (por ejemplo,/Users/List? Page1 = 1 & page2 = 2)? ¿Hay una mejor manera de usar vistas parciales?¿Cómo implementa la paginación en ASP.NET MVC?

Respuesta

10

Ignorando las rutas por solo un minuto, mantendrá el estado de las 2 páginas diferentes en la URL como parámetros de la cadena de consulta.

mysite.com/foo?list1page=2 & list2page = 8

A continuación, crear los datos/buscapersonas en consecuencia. Los enlaces de buscapersonas simplemente actualizarán la url.

Puede ser creativo con rutas para crear más URL amigables, pero creo que los parámetros de querystring son perfectamente aceptables aquí.

+1

¿Qué sucede si también tiene que mantenerse al día con múltiples parámetros de búsqueda? –

+0

Esto se vuelve un poco más complejo. Es probable que desee tener un ayudante en algún contexto y generar la URL adecuada. –

2

Si utiliza parámetros de consulta, los enlaces de página en cada lista deben conocerse entre sí para pasar ambos parámetros.

Si las dos listas son independientes entre sí, puede actualizarlas individualmente utilizando jquery & ajax. Simplemente coloque cada lista en su propio div como una vista parcial.

<div id="list1"><%= Html.RenderPartial ("ListA") %></div> 
<div id="list2"><%= Html.RenderPartial ("ListB") %></div> 

búsqueda ajaxSubmit desde el plugin jQuery Forma de una manera fácil de actualizar las listas.

1

PagedList.Mvc es un plugin realmente fácil de usar, y también está disponible a través del Nuget.

Cuestiones relacionadas