winform使用XtraReport导出Excel,大概十万条数据,提示文件过大,认为是内存溢出,一次把数据加载到内存导致能存不够
后来尝试把数据分开导出,代码如下
List tables = new List();
这里面的数据都是从report.DataSource拆出来的
foreach (DataTable exportDt in tables)
{
tableNum++;
(report.DataSource as DataTable).Rows.Clear();
report.DataSource = exportDt;
report.ExportToXlsx(folder.SelectedPath + "\\" + name + "(" + tableNum + ").xlsx", xeo);
exportDt.Rows.Clear();
}
但是在这里给DataSource赋值发现无效,只有第一次正常导出了第一个dt的数据,后面生成的两个表跟第一个一模一样。
在这里我有个疑问,因为report.DataSource刚进来的时候是有值的,我能够把第一个dt赋值过去,为什么后面的dt却无法赋值了呢。
我调试的时候看report.DataSource是正常赋值的,导出来却跟第一个一模一样。求大佬帮我看看问题在哪里。