我应该服从使用foreach循环并复制10000多个
行到新的数据表中?
是的,也可以考虑编写自己的扩展方法来分割表,并在需要时重用它。像下面这样-
public DataTable SliceTable(this DataTable dt, int rowsCount, int skipRows=0)
{
DataTable dtResult = dt.Clone();
for (int i = skipRows; i < dt.Rows.Count && rowsCount > 0; i++)
{
dtResult.ImportRow(dt.Rows[i]);
rowsCount --;
}
return dtResult;
}
用途-
DataTable myData; -- Original table
var slice1 = myData.SliceTable(1000);
var slice2 = myData.SliceTable(1000,1000);
var slice3 = myData.SliceTable(1000,2000);