DataTable程序分页 不推荐。

public static DataTable GetPageDataTable(DataTable dt2,int page, int size)
        {

            //测试栗子
            //DataTable dt2 = new DataTable("DT1");
            //dt2.Columns.Add("id", typeof(int));
            //dt2.Columns["id"].AutoIncrement = true;
            //dt2.Columns["id"].AutoIncrementSeed = 1;
            //dt2.Columns.Add("姓名", typeof(string));
            //dt2.Columns.Add("年龄", typeof(int));
            //dt2.Columns.Add("添加日期", typeof(DateTime));
            //DataRow DTrow = dt2.NewRow();
            //DTrow["姓名"] = "张三";
            //DTrow["年龄"] = 12;
            //DTrow["添加日期"] = DateTime.Now;

            //dt2.Rows.Add(DTrow);

            //DataRow DTrow1 = dt2.NewRow();
            //DTrow1["姓名"] = "李四";
            //DTrow1["年龄"] = 12;
            //DTrow1["添加日期"] = DateTime.Now;

            //dt2.Rows.Add(DTrow1);

            //DataRow DTrow2 = dt2.NewRow();
            //DTrow2["姓名"] = "王五";
            //DTrow2["年龄"] = 12;
            //DTrow2["添加日期"] = DateTime.Now;

            //dt2.Rows.Add(DTrow2);

            //DataRow DTrow3 = dt2.NewRow();
            //DTrow3["姓名"] = "马六";
            //DTrow3["年龄"] = 12;
            //DTrow3["添加日期"] = DateTime.Now;

            //dt2.Rows.Add(DTrow3);

            List<Dictionary<string, object>> rows = new List<Dictionary<string, object>>();
            for (int i = 0; i < dt2.Rows.Count; i++)
            {
                Dictionary<string, object> row = new Dictionary<string, object>();
                for (int j = 0; j < dt2.Columns.Count; j++)
                {
                    row.Add(dt2.Columns[j].ColumnName, dt2.Rows[i][dt2.Columns[j].ColumnName]);
                }
                rows.Add(row);
            }

            rows = rows.Skip((page - 1) * size).Take(size).ToList();


            DataTable result = new DataTable("result");

            for (int i = 0; i < dt2.Columns.Count; i++)
            {
                result.Columns.Add(dt2.Columns[i].ColumnName);
            }

            for (int i = 0; i < rows.Count; i++)
            {
                DataRow dr = result.NewRow();
                foreach (var item in rows[i])
                {
                    dr[item.Key] = item.Value;
                }
                result.Rows.Add(dr);
            }

            return result;
        }
NET新手,希望各位大侠多多指教。
原文地址:https://www.cnblogs.com/duanyuerui/p/7406176.html