DataTable 分批处理,每批处理4行
ZZ
--
/// <summary>
/// 分批处理。
/// </summary>
public void PartialProc()
{
int per_count = ;//每个datatable行数。每4行处理一次。
DataTable dt = new DataTable();
dt.Columns.Add("barcode");
dt.Columns.Add("qty");
dt.Rows.Add("a", "");
dt.Rows.Add("b", "");
dt.Rows.Add("c", "");
dt.Rows.Add("d", "");
dt.Rows.Add("e", "");
dt.Rows.Add("f", "");
dt.Rows.Add("g", "");
dt.Rows.Add("h", "");
dt.Rows.Add("i", "");
dt.Rows.Add("j", "");
dt.Rows.Add("k", ""); DataTable dtPer = dt.Clone();
int count = dt.Rows.Count;
int pages = count % per_count == ? count / per_count : count / per_count + ;//最终DataTable个数
List<DataTable> list = new List<DataTable>();
for (int i = ; i < pages; i++)
{
#region 这个是LINQ方式
//list.Add(dt.AsEnumerable().Skip(i * pre_count).Take(pre_count).CopyToDataTable());
#endregion #region 这个是LINQ方式
if (i == pages - )
{
dtPer = dt.Clone();
for (int j = i * per_count; j < count; j++)
{
dtPer.Rows.Add(dt.Rows[j][], dt.Rows[j][]);
} DoIt(dtPer);
}
else
{
dtPer = dt.Clone();
for (int j = i * per_count; j < (i + ) * per_count; j++)
{
dtPer.Rows.Add(dt.Rows[j][], dt.Rows[j][]);
} DoIt(dtPer);
}
#endregion
}
//list为最终拆分的DataTable集合
string som2 = string.Empty;
} public void DoIt(DataTable dtProc)
{ }
ZZ
--
ZZ
DataTable 分批处理,每批处理4行的更多相关文章
- 批处理命令行CMD启动停止重启IIS的命令
原文:批处理命令行CMD启动停止重启IIS的命令 启动IIS: net start iisadmin (IIS的整个服务) net start w3svc (WWW网页WEB服务) ...
- DataTable经典报错{列/行已属于其他表}
Delete()之后需要datatable.AccepteChanges()方法确认完全删除,因为Delete()只是将相应列的状态标志为删除, 还可以通过datatable.RejectChange ...
- 循环删除DataTable.Row中的多行问题
在C#中,如果要删除DataTable中的某一行,大约有以下几种办法: 1,使用DataTable.Rows.Remove(DataRow),或者DataTable.Rows.RemoveAt(ind ...
- Windows下的一个Nginx 批处理命令行控制台
其实作用很简单,就是为了少输入几个字母,完成对Nginx的控制而已,同时也算是练习了一把bat批处理吧. @echo off&color e&Title Nginx 命令行控制台 cl ...
- DataTable如何去除重复的行
两种方法1 数据库直接去除重复select distinct * from 表名去除了重复行distinct 2 对 DataTable直接进行操作DataTable dt=db.GetDt(&quo ...
- 【转】C# DataTable 导出 Excel 进阶 多行表头、合并单元格、中文文件名乱码
本文原创地址:http://blog.csdn.net/ranbolwb/article/details/8083983 ,转载请保留本行. 本例子是上一篇 DataTable 导出 Excel 的进 ...
- 将n行3列的数据dataTable装换成m行7列的dataTable
//思路:新建dataTable,定义需要的列, 先将数据源进行分组,第一重遍历获取所有组,第二重遍历获取某一个组的具体数据public void DataBind() { DateTime time ...
- 去除DataTable指定列的重复行
DataTable dt = ds.Tables[]; //获得 datatable DataView dv = new DataView(dt); DataTable dt2 = dv.ToTabl ...
- 去掉DataTable列中的重复行
DataTable dt = ds.Tables[0]; //获得 DataTable DataView dv = new DataView(dt);DataTable dt2 = dv.T ...
随机推荐
- Elasticsearch在centos6中的安装
一安装, 在你可以从 elasticsearch.org\/download 下载最新版本的Elasticsearch.tar文件. 一.用户设置 如果已经是普通用户登录可跳过此步骤. Elastic ...
- laravel更新时区:
config/app.php 'timezon'='UTC' 或 'timezone'='Asia/Shanghai'
- learning shell args handing key=value example (2)
Shell args handing key=value example [Purpose] Learning how to handing ker=value args [Eevi ...
- Python中简化的验证码功能实现
#!/usr/bin/env python # _*_ encoding:utf-8 _*_ # author:snate import random def generate_auth_code() ...
- bzoj3946
题解: 树套树 treap+线段树 treap就把线段树上的节点弄一下 然后修改的时候 把中间的一段一起加 把两头重新计算(二分+hash) 代码: #include<bits/stdc++.h ...
- [转载]JS浏览器兼容性问题
from:http://dada-fangfang.iteye.com/blog/811749 做BS开发就难免会用到javascript,而每个浏览器对javascript的支持有不同.这就需要我们 ...
- ssh的配置,ssh打开密钥登陆,关闭密码登陆。
刚装玩fedora,那么我们就以fedora为例来说一下怎么配置: 1.先确认是否已安装ssh服务: [root@localhost ~]# rpm -qa | grep openssh-server ...
- 基于GUI的简单聊天室03
上一版本,客户端关闭后会出现“socket close”异常问题,这个版本用捕捉异常来解决,实际上只是把异常输出的语句改为用户退出之类,并没真正解决 服务器类 package Chat03; /** ...
- CreateFile DeviceIoControl dwIoControlCode——应用程序与驱动程序通信
在“进程内存管理器中”的一个Ring0,Ring3层通信问题,之前也见过这样的代码,这次拆分出来详细总结一下. 先通过CreateFile函数得到设备句柄,CreateFile函数原型: HANDLE ...
- 使用MyEclipse开发Java EE应用:用XDoclet创建EJB 2 Session Bean项目(四)
MyEclipse限时秒杀!活动火热开启中>> [MyEclipse最新版下载] 四.运行XDoclet代码生成 通常每次更改XDoclet EJB配置.应用程序服务器设置或修改任何EJB ...