是的,ASP.NET 分頁可以進行動態分頁。動態分頁是指在查詢數據時,根據用戶請求的頁碼和每頁顯示的記錄數來動態生成 SQL 查詢語句,從而實現分頁。這種方法可以提高應用程序的性能,因為它只在需要時才查詢數據庫,而不是一次性查詢所有數據。
在 ASP.NET 中,可以使用 GridView 或 Repeater 等控件實現動態分頁。以下是一個簡單的示例,展示了如何使用 GridView 控件實現動態分頁:
private string GetData(int pageIndex, int pageSize)
{
int totalRecords = GetTotalRecords(); // 獲取總記錄數的方法
int offset = (pageIndex - 1) * pageSize; // 計算偏移量
string query = "SELECT * FROM YourTable WHERE SomeCondition LIMIT @Offset, @PageSize";
using (SqlConnection connection = new SqlConnection("YourConnectionString"))
{
SqlCommand command = new SqlCommand(query, connection);
command.Parameters.AddWithValue("@Offset", offset);
command.Parameters.AddWithValue("@PageSize", pageSize);
connection.Open();
SqlDataReader reader = command.ExecuteReader();
// 將數據綁定到 GridView
}
}
AllowPaging屬性為true:<asp:GridView ID="GridView1" runat="server" AllowPaging="True" OnPageIndexChanging="GridView1_PageIndexChanging">
</asp:GridView>
protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
GridView1.PageIndex = e.NewPageIndex;
string pageIndex = GridView1.PageIndex.ToString();
string pageSize = GridView1.PageSize.ToString();
string data = GetData(Convert.ToInt32(pageIndex), Convert.ToInt32(pageSize));
// 將數據綁定到 GridView
}
這樣,當用戶更改頁碼時,GridView 將根據新的頁碼和每頁顯示的記錄數動態加載數據。