将一个DataTable分解成多个DataTable
2013-02-21 17:35
260 查看
/// <summary> /// 分解数据表 /// </summary> /// <param name="originalTab">需要分解的表</param> /// <param name="rowsNum">每个表包含的数据量</param> /// <returns></returns> public DataSet SplitDataTable(DataTable originalTab, int rowsNum) { //获取所需创建的表数量 int tableNum = originalTab.Rows.Count / rowsNum; //获取数据余数 int remainder = originalTab.Rows.Count % rowsNum; DataSet ds = new DataSet(); //如果只需要创建1个表,直接将原始表存入DataSet if (tableNum == 0) { ds.Tables.Add(originalTab); } else { DataTable[] tableSlice = new DataTable[tableNum]; //Save orginal columns into new table. for (int c = 0; c<tableNum; c++) { tableSlice[c] = new DataTable(); foreach(DataColumn dc in originalTab.Columns) { tableSlice[c].Columns.Add(dc.ColumnName,dc.DataType); } } //Import Rows for (int i = 0; i < tableNum; i ++) { // if the current table is not the last one if (i != tableNum -1) { for(int j = i*rowsNum ; j < ((i+1)*rowsNum); j++) { tableSlice[i].ImportRow(originalTab.Rows[j]); } } else { for(int k = i*rowsNum ; k < ((i+1)*rowsNum+remainder); k++) { tableSlice[i].ImportRow(originalTab.Rows[k]); } } } //add all tables into a dataset foreach(DataTable dt in tableSlice) { ds.Tables.Add(dt); } } return ds; }
相关文章推荐
- 将一个DataTable分解成多个DataTable
- 将一个DataTable分解成多个DataTable
- 将一个DataTable分解成多个DataTable
- 多个DataTable的合并成一个新表
- 多个DataTable的合并成一个新表
- 将一个正整数分解为多个连续整数之和
- BubbleButtonView - 将字符串分解为多个气泡然后排列到一个 view上
- 将一个数分解成多个素数和的方法数
- 17.开源项目--git将一个提交分解成多个提交
- 多个DataTable的合并成一个新表
- 合并分解多个可执行文件为一个文件
- 将一个dataTable拆成多个
- .net同一个解决方案下面多个web项目。目的为了较大项目分解模块,各自编译开发!
- C#一个DataSet中存入多个DataTable的方法
- 数据由一个图层按照要素拆分多个文件或图层,俗称分解、扇出、拆分
- 多个fragment在同一个activity中显示
- 一个tomcat设置多个端口,多个端口对应多个应用
- Nginx-一个IP配置多个站点
- 写student类中的select,delete,update,insert方法并在objectDataSource中应用(分别写两个,一个返回datatable,一个使用list)
- yii 一个表单提交多个模型