Blog de Jorge Pedraza

agosto 29, 2010

Paginacion optimizada en ASP.NET

Filed under: Aplicaciones Web — JorgePedraza @ 1:42 pm
Tags: , ,

 

Hola, este articulo trata de resaltar un vía optima y fácil para generar mecanismo eficiente de paginación de datos en ASP.NET 4.0. Dicho mecanismo tiene como objetivo modular la información en bloques de datos especifico desde SQL Server hacia a la aplicación Web ASP.NET, de tal forma se procesa cantidades datos basado en indice numerico, los cuales entregarán información liviana y resumida dentro de la aplicación Web.

Con esto se evita la sobrecarga de grandes volúmenes de datos dentro de la respuesta Web de ASP.NET. Entonces a continuación se explica de forma precisa aspectos clave del artículo.

Parametros de Uso:

Nombre Descripción
PageSize Indica el número de registros que se van a mostrar en una página.
PageIndex Indica el índice de la página que se muestra actualmente. El limite inferior para nuestro propósito es Cero.
RowCount Indica la cantidad total de registros que se encuentra en la tabla.
PageCount Indica el número total de páginas.
PageCount = (RowCount + PageSize – 1) / PageSize

Requisito de entorno:

  Campo Función
Especificación ID AutoNumerico Row_Number
SQL Server Genérico

Si

No

SQL Server 2005 o Superior

Opcional

Si

Ejemplo Conceptual:

Nombre ID PageSize PageIndex PageCount RowCount
Gustavo 1 10 0 2 20
Catherine 2
Kim 3
Humberto 4
Pilar 5
Frances 6
Margaret 7
Carla 8
Jay 9
Ronald 10
Samuel 11 10 1
James 12
Robert 13
François 14
Kim 15
Lili 16
Amy 17
Anna 18
Milton 19
Paul 20

Descripción del Mecanismo:

La idea principal de este mecanismo es paginar los datos desde el origen de datos SQL Server, a través de rutinas especificas contenida en el origen datos, que adicionalmente tambien nos entregara la cantidad total de paginas disponible por mostrar hacia la aplicación Web ASP.NET. Entonce para concretar:

  1. Se establece uno o más procedimiento almacenado en la base de datos de SQL Server:
    1. Este maneja dos parametros entradas (@PageSize, @PageIndex) y uno de salida @PageCount.
    2. El algoritmo del procedimiento es una consulta de datos (SELECT) basado en cierta condición relacionada con un campo clave del tipo AutoNumerico.
    3. Este campo es llamado ID, el cual representa la forma de trabajar en modo SQL Server Genérico. En caso de no trabajar con este tipo de campo; se puede tomar como opción la función Row_Number disponible en SQL server 2005 o Superior, para generar ese campo de forma virtual.
    4. Dicho campo se usara en la condición de la consulta (SELECT) para fijar el resultado pautado. Por ejemplo: todos los ID que estén contenidos entre 1 y 10, como parte de primera pagina.
  2. Usa la Clase SqlDataReader dentro de la aplicación Web, para recibir el resultado de dicho procedimiento almacenado.
  3. Se vincula el Resultado del SqlDataReader con el control GridView
  4. A nivel de programación se crea una forma de paginación con el valor del parametro @PageCount fijado por el procedimiento dentro del proceso actual.

En Resumen:

Se puede apreciar una forma clara y precisa de generar procesos optimizado con la gestion de datos dentro de Aplicaciones Web ASP.NET, que a la final busca mejorara la disponibilidad de información en diferentes entornos limitado de recursos.

Codigo Fuente ASP.NET 4.0 y Base de datos SQL Server 2008 R2 Express:

Links de Interes:

Dejar un comentario »

Aún no hay comentarios.

RSS feed for comments on this post. TrackBack URI

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

Crea un blog o un sitio web gratuitos con WordPress.com.

A %d blogueros les gusta esto: