반응형
//시트 한가지만 사용할 경우
using (ExcelPackage pck = new ExcelPackage())
{
	ExcelWorksheet workSheet = pck.Workbook.Worksheets.Add(ds.Tables["데이터테이블명"].TableName);
	workSheet.Cells["A1"].LoadFromDataTable(ds.Tables["데이터테이블명"], true);

	pck.SaveAs(new FileInfo(strRealPath));
}

//시트 여러개 사용할 경우
private static void DataSetToExcel(DataSet dataSet, string filePath)
{
	using (ExcelPackage pck = new ExcelPackage())
	{
		foreach (DataTable dataTable in dataSet.Tables)
		{
			ExcelWorksheet workSheet = pck.Workbook.Worksheets.Add(dataTable.TableName);
			workSheet.Cells["A1"].LoadFromDataTable(dataTable, true);
		}

		pck.SaveAs(new FileInfo(filePath));
	}
}

//EPPlus를 사용 한 것 입니다.

대략 1만개의 row를 15초 정도로 속도 줄여줍니다. 퍼포먼스 좋습니다.

 

 

 

 

+ Recent posts