Postupy: Stránka through výsledek dotazu pro lepší výkon

Překlady článku Překlady článku
ID článku: 318131 - Produkty, které se vztahují k tomuto článku.
Tento článek byl archivován. Je nabízen v takovém stavu, v jakém je, a nebude již nadále aktualizován.
Rozbalit všechny záložky | Minimalizovat všechny záložky

Na této stránce

Souhrn

Tento článek obsahuje pokyny o implementaci stránkování. Tento článek poskytuje několik příkladů stránkování a popisuje výhod Každá metoda.

Metody implementace stránkování

Existuje mnoho přístupy stránkování. Stránkování je obvykle architektonický problém. Stránkování do značné míry závisí na návrhu databáze a kolik záznamů mají stránky. K implementaci stránkování můžete použít některou z následujících metod:
  • Použít vnitřní stránkování, která je k dispozici v prvku DataGrid. Tato metoda stránkovací se snadno používá a funguje také v případě, že máte malý počet záznamů na stránku. Však sníží výkon při zvýšit počet záznamů. V aplikaci Microsoft Visual Basic .NET je žádné vnitřní stránkování.Další informace o implementaci stránkování klepněte na článek číslo článku databáze Microsoft Knowledge Base:
    305271Postupy: Vlastní stránky DataGrid Windows Control pomocí jazyka .NET
  • Urychlení výkonu návrhu dotazů nebo uložené procedury počet záznamů, které chcete načíst. Oddíl Custom Paging Sample demonstruje implementovat vlastní stránkování.

    Můžete také použít TOP a klauzulí WHERE v příkazu SQL návrhu dotazů nebo uložené procedury počet záznamů, které chcete načíst. Další informace o použití TOP a WHERE implementovat vlastní stránkování, navštivte následující web společnosti Microsoft Developer Network (MSDN):
    Stránkovací through výsledek dotazu
    http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpguide/html/cpconpagingthroughqueryresult.asp

Ukázka vlastní stránkování

Tento příklad znázorňuje, jak implementovat vlastní stránkování prostřednictvím ASP.NET použít ovládací prvek DataGrid. Při použití této metody můžete načíst záznamy, které chcete v libovolném pořadí stránek. V důsledku toho tato metoda je vysoce efektivní a univerzální.

Tato ukázka vyžaduje databáze zahrnout tabulky s indexem. Ačkoli tento příklad používá Microsoft SQL Server a databáze serveru SQL Northwind, můžete upravit tento ukázkový použít jakékoli databáze.
  1. Takto vytvořit novou webovou aplikaci ASP.NET jazyka:
    1. Spusťte aplikaci Visual Studio .NET.
    2. V nabídce soubor přejděte na příkaz Nový a klepněte na příkaz projekt.
    3. V dialogovém okně Nový projekt klepněte v části Typy ProjectProjekty jazyka a klepněte na Webovou aplikaci ASP.NET v části šablony.
  2. Přetáhněte ovládací prvek DataGrid ze sady nástrojů WebForm1.aspx.
  3. DataGrid1 klepněte pravým tlačítkem myši a potom klepněte na tlačítko Tvůrce vlastností.
  4. Takto v dialogovém okně Tvůrce vlastností:
    1. Klepněte na tlačítko stránkovacího.
    2. Klepnutím vyberte vlastnost AllowPaging a zaškrtněte políčka AllowCustomPaging.
    3. Nastavte vlastnost PageSize3.
    4. V seznamu režimu klepněte na příkaz Čísla stránek.
    5. Klepněte na tlačítko použít a potom klepněte na tlačítko OK.
  5. Klepněte na položku HTML v dolní části WebForm1.aspx otevřete zobrazení Zdroj HTML. Nahradit značku <asp:DataGrid>, která je přidána ve výchozím nastavení s následujícím kódem:
    <asp:DataGrid id="Datagrid1" runat="server" AllowCustomPaging="True" PageSize="3" AllowPaging="True" PagerStyle-Mode="NumericPages" OnPageIndexChanged="DataGrid1_PageIndexChanged">
    </asp:DataGrid>
    					
  6. Poklepejte na prázdnou oblast stránky WebForm1.aspx otevřete okno kód a přidat následující obory názvů do horní části stránky:
    Imports System.Data
    Imports System.Data.SqlClient
    					
  7. Přidat následující deklaraci pod Veřejné třídy Webform1:
        Dim cn As SqlConnection
        Dim StartIndex As Integer
        Dim EndIndex As Integer
    					
  8. Přidejte následující kód v události Page_Load formuláře:
            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. Přidejte následující kód po podprogram 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. Stisknutím klávesy F5 spuštění aplikace.
  11. Chcete-li projekt otestovat, vyberte jakékoli číslo stránky, která je uvedena pod mřížkou.

Vlastnosti

ID článku: 318131 - Poslední aktualizace: 10. února 2014 - Revize: 2.0
Informace v tomto článku jsou určeny pro produkt:
  • Microsoft ADO.NET (included with the .NET Framework)
  • Microsoft ADO.NET 1.1
Klíčová slova: 
kbnosurvey kbarchive kbmt kbhowtomaster kbsqlclient kbsystemdata KB318131 KbMtcs
Strojově přeložený článek
Důležité: Tento článek byl přeložen pomocí software společnosti Microsoft na strojový překlad, ne profesionálním překladatelem. Společnost Microsoft nabízí jak články přeložené překladatelem, tak články přeložené pomocí software na strojový překlad, takže všechny články ve Znalostní databázi (Knowledge Base) jsou dostupné v češtině. Překlad pomocí software na strojový překlad ale není bohužel vždy dokonalý. Obsahuje chyby ve skloňování slov, skladbě vět, nebo gramatice, podobně jako když cizinci dělají chyby při mluvení v češtině. Společnost Microsoft není právně zodpovědná za nepřesnosti, chyby nebo škody vzniklé chybami v překladu, nebo při použití nepřesně přeložených instrukcí v článku zákazníkem. Společnost Microsoft aktualizuje software na strojový překlad, aby byl počet chyb omezen na minimum.
Projděte si také anglickou verzi článku:318131

Dejte nám zpětnou vazbu

 

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