我正在使用c#在asp.net中的web應用程序工作,我想要顯示從10.000 - 1.000.000大量的行。數據綁定的速度很快,因爲我在調試模式下逐步檢查,但是當頁面嘗試顯示GridView時,它需要永久使用。有什麼建議麼?在c#中使用GridView的數據緩慢人口asp.net
0
A
回答
0
問題是客戶端(瀏覽器)嘗試顯示(渲染)大量的GUI時。要求客戶提供10,000 - 1,000,000行可以明確地花費太多時間。
您的問題的一個解決方案是使用分頁使用AllowPaging
和PageSize
屬性。這會將您的GridView
中顯示的行數限制爲您在PageSize
屬性中設置的行數。
HTML:
<asp:GridView ID="gv"
runat="server"
OnPageIndexChanging="gv_PageIndexChanging"
OnPageIndexChanged="gv_PageIndexChanged"
AllowPaging="true"
PageSize="50">
<Columns>
....
後面的代碼:
protected void gv_PageIndexChanged(object sender, EventArgs e)
{
// bind your data
gv.DataBind();
}
protected void gv_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
if (e.NewPageIndex == -1)
gv.PageIndex = Int32.MaxValue;
else
gv.PageIndex = e.NewPageIndex;
}
建議:使用上述解決方案應該解決UI問題,但是巨大的數據量將仍然是取得。我建議在SQL級別和UI級別中分頁。
0
您應該爲此問題設計一個查詢,例如,您希望在gridview分頁的每個頁面上顯示10 000條記錄中的10條記錄。
傳遞三個參數(「@startRowIndex」,「@startRowIndex」,「@maximumRows」)從你的GridView在下面的SELECT語句,並使用ROW_NUMBER()
方法(SQL Server 2005的上方支持的話),以獲得連續增加的行數。
SELECT ...
FROM
(SELECT ...
ROW_NUMBER() OVER(ORDER BY ColumnName) as RowNum
FROM Employees e
) as DerivedTableName
WHERE RowNum BETWEEN @startRowIndex AND (@startRowIndex + @maximumRows) - 1
相關問題
- 1. ASP.net GridView - 使用數據源 - C#
- 2. 在Gridview中搜索數據c#asp.net
- 3. 使用DataBinding的ListBox的極端緩慢人口
- 4. 在asp.net中爲GridView中的動態數據緩存
- 5. 使用SQL Server CE數據庫的C#/ ASP.NET網站緩慢查詢
- 6. 在asp.net使用vb.net數據Gridview
- 7. UserManager.FindByNameAsync ASP.NET MVC中的緩慢
- 8. 用數據ASP.NET C填充Gridview EmptyDataTemplate#
- 9. GridView的出口記錄爲文本文件中使用ASP.Net C#
- 10. C#ASP.NET緩慢的AJAX加載
- 11. Gridview人口
- 12. C#asp.net GridView的導航在GridView中排
- 13. Android ListView,GridView緩慢加載
- 14. GridView非常緩慢滾動
- 15. 使用mysqldump緩慢寫入數據庫
- 16. 使用Dynamics SDK緩慢處理數據
- 17. 使用jQuery Ajax調用gridview中的數據顯示太慢
- 18. ServiceStack Redis C#緩慢檢索數據
- 19. ASP.net Gridview按鈕使用c#
- 20. GridView的RowDataBound事件使得我的GridView緩慢
- 21. 使用Json數據綁定Gridview在c#
- 22. 如何使用asp.net GridView中導出圖像,並使用asp.net或導出GridView的數據,以PDF數據到PDF
- 23. 在會話中緩存gridview數據
- 24. 在GridView Asp.Net中使用Dropdownlist?
- 25. ASP.Net:在GridView中使用UpdatePanel
- 26. 在ASP.NET GridView中使用DataKeyNames?
- 27. Asp.net GridView使用LINQ填充數據DataSource
- 28. 使用聯繫人框架獲取緩慢的聯繫人
- 29. ASP.Net中的數據緩存
- 30. ASP.NET中的數據緩存
問題是,當客戶端(瀏覽器)儘量不要顯示大量的GUI。您應該使用'GridView'分頁 –
您的對象在裝訂之前是否被填充?通常更新需要時間。您可以在更新時將綁定設置爲空,然後重新綁定。 – jdweng
@jdweng它是空的,就像我在我的問題中所說的所有代碼運行得很快,顯示時間很慢。 –