Cómo: Página a través de un resultado de consulta para el mejor rendimiento

Seleccione idioma Seleccione idioma
Id. de artículo: 318131 - Ver los productos a los que se aplica este artículo
Este artículo se ha archivado. Se ofrece "tal cual" y no se volverá a actualizar.
Expandir todo | Contraer todo

En esta página

Resumen

En este artículo paso a paso se proporcionan directrices sobre cómo implementar la paginación. En este artículo se proporciona algunos ejemplos de paginación y se describe la ventaja de cada método.

Métodos para implementar paginación

Hay muchos enfoques para la paginación. Paginación suele ser un problema de arquitectura. Paginación en gran medida depende de su diseño de base de datos y cuántos registros tienen a la página. Puede utilizar cualquiera de los métodos siguientes para implementar la paginación:
  • Utilice la paginación intrínseca que está disponible en el control DataGrid . Este método de paginación es fácil de usar y funciona bien cuando tiene un número pequeño de registros a la página. Sin embargo, rendimiento disminuye cuando aumenta el número de registros. En Microsoft Visual Basic. NET, no hay paginación intrínseco.Para obtener información adicional acerca de cómo implementar la paginación, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
    305271Cómo: Personalizar paginación de un Control DataGrid de Windows mediante Visual Basic .NET
  • Para acelerar el rendimiento, diseñar consultas o procedimientos almacenados para recuperar el número de registros que desee. La sección Custom Paging Sample muestra cómo implementar paginación personalizada.

    También puede utilizar el TOP las cláusulas y WHERE en la instrucción SQL para consultas de diseño o procedimientos almacenados para recuperar el número de registros que desee. Para obtener más información acerca de cómo utilizar TOP y WHERE para implementar la paginación personalizada, visite el siguiente sitio Web de Microsoft Developer Network (MSDN):
    Paginación en un resultado de consulta
    http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpguide/html/cpconpagingthroughqueryresult.asp

Ejemplo de la paginación personalizada

Este ejemplo demuestra cómo utilizar un control DataGrid para implementar la paginación personalizada a través de ASP.NET. Cuando utiliza este método, se pueden recuperar los registros que desee en cualquier orden de página. Como resultado, este método es muy eficaz y versátil.

Este ejemplo requiere que la base de datos incluye tablas que tienen un índice. Aunque este ejemplo utiliza Microsoft SQL Server y la base de datos Northwind de SQL Server, puede adaptar en este ejemplo para utilizar con cualquier base de datos.
  1. Siga estos pasos para crear una nueva aplicación Web de ASP.NET de Visual Basic:
    1. Inicie Microsoft Visual Studio NET..
    2. En el menú archivo , seleccione nuevo y, a continuación, haga clic en proyecto .
    3. En el cuadro de diálogo Nuevo proyecto , haga clic en Proyectos de Visual Basic bajo Tipos de proyecto y, a continuación, haga clic en Aplicación Web ASP.NET bajo plantillas .
  2. Arrastre un control DataGrid desde el cuadro de herramientas a WebForm1.aspx.
  3. Haga clic con el botón secundario del mouse en DataGrid1 y, a continuación, haga clic en Generador de propiedades .
  4. Siga estos pasos en el cuadro de diálogo Generador de propiedades :
    1. Haga clic en la paginación .
    2. Haga clic para seleccionar el AllowPaging y las casillas de verificación AllowCustomPaging .
    3. Establezca la propiedad PageSize a 3 .
    4. En la lista modo , haga clic en Recortar .
    5. Haga clic en Aplicar y, a continuación, haga clic en Aceptar .
  5. Haga clic en HTML en la parte inferior de WebForm1.aspx para abrir la vista de origen HTML. Reemplace la etiqueta <asp:DataGrid> que se agrega de forma predeterminada con el código siguiente:
    <asp:DataGrid id="Datagrid1" runat="server" AllowCustomPaging="True" PageSize="3" AllowPaging="True" PagerStyle-Mode="NumericPages" OnPageIndexChanged="DataGrid1_PageIndexChanged">
    </asp:DataGrid>
    					
  6. Haga doble clic en un área vacía de la página WebForm1.aspx para abrir la ventana y a continuación, agregar los siguientes espacios de nombres a la parte superior de la página:
    Imports System.Data
    Imports System.Data.SqlClient
    					
  7. Agregue la siguiente declaración de Public Class Webform1 :
        Dim cn As SqlConnection
        Dim StartIndex As Integer
        Dim EndIndex As Integer
    					
  8. Agregue el código siguiente en el evento Page_Load del formulario:
            Dim myCommand As SqlCommand
            cn = New SqlConnection("server = localhost; uid=userid; pwd=password; database=Northwind ")
            If Not IsPostBack Then
                myCommand = New SqlCommand()
                myCommand.CommandText = "Select Count(*) from Products"
                myCommand.Connection = cn
                cn.Open()
                DataGrid1.VirtualItemCount = myCommand.ExecuteScalar()
                cn.Close()
                BindDatagrid()
            End If
    					
  9. Agregue el código siguiente después de la subrutina Page_Load :
         Sub BindDatagrid()
            Dim myAdapter As SqlDataAdapter
            Dim DS As DataSet
            EndIndex = StartIndex + DataGrid1.PageSize
            myAdapter = New SqlDataAdapter("Select * From Products Where ProductID > @startIndex And ProductID <= @endIndex Order by ProductID", cn)
            myAdapter.SelectCommand.Parameters.Add("@startIndex", StartIndex)
            myAdapter.SelectCommand.Parameters.Add("@endIndex", EndIndex)
            DS = New DataSet()
            myAdapter.Fill(DS)
            DataGrid1.DataSource = DS
            DataGrid1.DataBind()
        End Sub
    
        Public Sub datagrid1_PageIndexChanged(ByVal source As System.Object, ByVal e As System.Web.UI.WebControls.DataGridPageChangedEventArgs)
            StartIndex = (e.NewPageIndex * DataGrid1.PageSize)
            DataGrid1.CurrentPageIndex = e.NewPageIndex
            BindDatagrid()
        End Sub
    					
  10. Presione F5 para ejecutar la aplicación.
  11. Para probar el proyecto, seleccione cualquier número de página que aparece debajo de la cuadrícula.

Propiedades

Id. de artículo: 318131 - Última revisión: domingo, 9 de febrero de 2014 - Versión: 2.0
La información de este artículo se refiere a:
  • Microsoft ADO.NET (included with the .NET Framework)
  • Microsoft ADO.NET 1.1
Palabras clave: 
kbnosurvey kbarchive kbmt kbhowtomaster kbsqlclient kbsystemdata KB318131 KbMtes
Traducción automática
IMPORTANTE: Este artículo ha sido traducido por un software de traducción automática de Microsoft (http://support.microsoft.com/gp/mtdetails) en lugar de un traductor humano. Microsoft le ofrece artículos traducidos por un traductor humano y artículos traducidos automáticamente para que tenga acceso en su propio idioma a todos los artículos de nuestra base de conocimientos (Knowledge Base). Sin embargo, los artículos traducidos automáticamente pueden contener errores en el vocabulario, la sintaxis o la gramática, como los que un extranjero podría cometer al hablar el idioma. Microsoft no se hace responsable de cualquier imprecisión, error o daño ocasionado por una mala traducción del contenido o como consecuencia de su utilización por nuestros clientes. Microsoft suele actualizar el software de traducción frecuentemente.
Haga clic aquí para ver el artículo original (en inglés): 318131

Enviar comentarios

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com