Gewusst wie: Seite durch ein Abfrageergebnis für verbesserte Leistung

Wichtig: Dieser Artikel wurde maschinell und nicht von einem Menschen übersetzt. Die Microsoft Knowledge Base ist sehr umfangreich und ihre Inhalte werden ständig ergänzt beziehungsweise überarbeitet. Um Ihnen dennoch alle Inhalte auf Deutsch anbieten zu können, werden viele Artikel nicht von Menschen, sondern von Übersetzungsprogrammen übersetzt, die kontinuierlich optimiert werden. Doch noch sind maschinell übersetzte Texte in der Regel nicht perfekt, insbesondere hinsichtlich Grammatik und des Einsatzes von Fremdwörtern sowie Fachbegriffen. Microsoft übernimmt keine Gewähr für die sprachliche Qualität oder die technische Richtigkeit der Übersetzungen und ist nicht für Probleme haftbar, die direkt oder indirekt durch Übersetzungsfehler oder die Verwendung der übersetzten Inhalte durch Kunden entstehen könnten.

318131
Dieser Artikel wurde archiviert. Er wird im vorliegenden Zustand bereitgestellt und nicht mehr aktualisiert.
Dieser Artikel bezieht sich auf der folgenden Microsoft .NET Framework-Klassenbibliothek-Namespace:
  • System.Data.SqlClient

Inhalt

Zusammenfassung
Dieser Artikel enthält Richtlinien zum zum Implementieren von Paging. Dieser Artikel enthält ein paar Beispiele für die Auslagerungsdatei und den Vorteil, jede Methode beschreibt.

back to the top

Methoden zum Implementieren von Paging

Es gibt viele Ansätze zum Paging. Paging ist i. d. r. Architektur Problem. Paging größtenteils hängt von Ihren Datenbankentwurf und wie viele Datensätze müssen Seite. Sie können eine der folgenden Methoden zum Implementieren von Paging verwenden:
  • Verwenden Sie das systeminterne Paging, das in das DataGrid -Steuerelement verfügbar ist. Diese Methode der Auslagerung ist benutzerfreundlich und funktioniert gut, wenn eine kleine Anzahl von Datensätzen zur Seite. Jedoch verringert Leistung, wenn die Anzahl der Datensätze erhöhen. In Microsoft Visual Basic .NET dafür gibt es keine systeminternen Auslagerung.Weitere Informationen zum Implementieren von Paging finden Sie die Artikel der Microsoft Knowledge Base:
    305271So wird 's gemacht: Benutzerdefiniertes Paging DataGrid-Windows-Steuerelement mit Visual Basic .NET
  • Entwerfen Sie Abfragen oder gespeicherte Prozeduren, die Anzahl der Datensätze abzurufen, die Sie möchten, um die Leistung zu beschleunigen. Abschnitt Custom Paging Sample veranschaulicht, wie benutzerdefinierte Paginierung implementieren.

    Sie können auch die TOP und die WHERE-Klauseln in der SQL-Anweisung Entwurf Abfragen oder gespeicherte Prozeduren, die Anzahl der Datensätze abzurufen, die Sie möchten. Weitere Informationen zum Verwenden von TOP und WHERE benutzerdefinierte Paginierung implementieren, die folgenden Microsoft Developer Network (MSDN)-Website:
back to the top

Für benutzerdefinierte Paging

Dieses Beispiel veranschaulicht, wie ein DataGrid -Steuerelement verwenden, um benutzerdefiniertes Paging über ASP.NET implementieren. Wenn Sie diese Methode verwenden, können Sie die Datensätze abrufen, die in einer beliebigen Seitenreihenfolge sollen. Daher ist diese Methode sehr effiziente und vielseitiger.

Dieses Beispiel erfordert, dass die Datenbank Tabellen enthalten, die einen Index verfügen. Obwohl in diesem Beispiel Microsoft SQL Server und der SQL Server Northwind -Datenbank verwendet wird, können Sie dieses Beispiel mit einer Datenbank anpassen.
  1. Gehen Sie folgendermaßen eine neue Visual Basic ASP.NET Web-Anwendung erstellen vor:
    1. Starten Sie Microsoft Visual Studio .NET.
    2. Zeigen im Menü Datei auf neu , und klicken Sie dann auf Projekt .
    3. Klicken Sie im Dialogfeld Neues Projekt klicken Sie unter Projekttypen auf Visual Basic-Projekte , und klicken Sie dann unter Vorlagen auf ASP.NET-Webanwendung .
  2. Ziehen Sie ein DataGrid -Steuerelement aus der Toolbox auf WebForm1.aspx.
  3. Klicken Sie mit der rechten Maustaste auf DataGrid1 , und klicken Sie dann auf Eigenschaften-Generator .
  4. Gehen Sie im Dialogfeld Eigenschaftengenerator folgendermaßen vor:
    1. Klicken Sie auf der Auslagerungsdatei .
    2. Klicken Sie auf Kontrollkästchen AllowCustomPaging und AllowPaging .
    3. Legen Sie die PageSize -Eigenschaft auf 3 .
    4. Klicken Sie in der Liste Modus auf Seitenzahlen .
    5. Klicken Sie auf Übernehmen , und klicken Sie dann auf OK .
  5. Klicken Sie auf HTML am unteren Rand WebForm1.aspx, um die HTML-Quellansicht öffnen. Ersetzen Sie das <asp:DataGrid>-Tag, das standardmäßig mit den folgenden Code hinzugefügt wird:
    <asp:DataGrid id="Datagrid1" runat="server" AllowCustomPaging="True" PageSize="3" AllowPaging="True" PagerStyle-Mode="NumericPages" OnPageIndexChanged="DataGrid1_PageIndexChanged"></asp:DataGrid>					
  6. Doppelklicken Sie auf in einen leeren Bereich der Seite "WebForm1.aspx", um das Codefenster zu öffnen und fügen Sie die folgenden Namespaces dann am oberen Rand der Seite hinzu:
    Imports System.DataImports System.Data.SqlClient					
  7. Fügen Sie folgende Deklaration unter Public Class Webform1 :
        Dim cn As SqlConnection    Dim StartIndex As Integer    Dim EndIndex As Integer					
  8. Fügen Sie folgenden Code im Page_Load -Ereignis des Formulars:
            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. Fügen Sie folgenden Code nach der Unterroutine 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. Drücken Sie [F5], um die Anwendung auszuführen.
  11. Markieren Sie zum Testen des Projekts Seitenzahl, die unterhalb des Rasters aufgeführt ist.
back to the top

Warnung: Dieser Artikel wurde automatisch übersetzt

Eigenschaften

Artikelnummer: 318131 – Letzte Überarbeitung: 02/07/2014 18:36:46 – Revision: 2.0

  • Microsoft ADO.NET (included with the .NET Framework)
  • Microsoft ADO.NET 1.1
  • kbnosurvey kbarchive kbmt kbhowtomaster kbsqlclient kbsystemdata KB318131 KbMtde
Feedback