C# DataTable分页处理实例代码

有时候我们从数据库获取的数据量太大,而我们不需要一次性显示那么多的时候,我们就要对数据进行分页处理了,让每页显示不同的数据。

public DataTable GetPagedTable(DataTable dt, int PageIndex, int PageSize)//PageIndex表示第几页,PageSize表示每页的记录数
  {
   if (PageIndex == 0)
    return dt;//0页代表每页数据,直接返回

   DataTable newdt = dt.Copy();
   newdt.Clear();//copy dt的框架

   int rowbegin = (PageIndex - 1) * PageSize;
   int rowend = PageIndex * PageSize;

   if (rowbegin >= dt.Rows.Count)
    return newdt;//源数据记录数小于等于要显示的记录,直接返回dt

   if (rowend > dt.Rows.Count)
    rowend = dt.Rows.Count;
   for (int i = rowbegin; i <= rowend - 1; i++)
   {
    DataRow newdr = newdt.NewRow();
    DataRow dr = dt.Rows[i];
    foreach (DataColumn column in dt.Columns)
    {
     newdr[column.ColumnName] = dr[column.ColumnName];
    }
    newdt.Rows.Add(newdr);
   }
   return newdt;
  }

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持呐喊教程。

声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:notice#nhooo.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。