1) if you are retrieving data from a database use datareader instead of datatable
2) write excel in a temporary file, delete it after completion (if it's a web environment, use response.writefile, and then delete it)
3) write a headline first, then add something like this to it (using my phone to print this)
var pck = new ExcelPackage(); var ws = pck.AddSheet("sheet1"); //write header here pck.saveas(fileinfo); pck.dispose(); // not sure if function existed pck= new excelpage(fileino.fullname); ws = pck.worksheets[1]; var rowIndex =0; while (reader.read()) { if (++rowindex % 100000 == 0) { // save and re-open } //write row here } pck.save(); //dispose / send file / delete file etc
source share