예제 #1
0
        private void OpenXml_Click(object sender, RoutedEventArgs e)
        {
            //  DataSet dummySet = CreateDummyDataSet();
            if (_dataSet == null)
            {
                return;
            }

            ////dataset多个datatable,产生多sheet
            //for (int i = 0; i < 3; i++)
            //{
            //    DataTable dataTable = tesTable.Copy();
            //    dataTable.TableName = dataTable.TableName + i;
            //    _dataSet.Tables.Add(dataTable);
            //}

            CreateExcelFile createExcelFile = new CreateExcelFile();
            var             sw = Stopwatch.StartNew();

            excelUtils.Create(@"c:\ExcelUtils.xlsx", _dataSet);//12万行39s 50万行2分35秒 2分45
            TimeSpan elapsed1 = sw.Elapsed;

            GC.Collect();

            sw.Restart();
            //  exporter.Export(tesTable, @"c:\EPPHelper1GenerateExcel.xlsx"); //100万行 2分
            //  createExcelFile.CreateExcelDocument(_dataSet, @"c:\CreateExcelFile.CreateExcelDocument.xlsx");//12万行33s 50万行2分22秒 1分28
            TimeSpan elapsed2 = sw.Elapsed;

            //  GC.Collect();
            //  sw.Restart();
            //   OpenXMLExcel.ExportDataSet(_dataSet, "c:\\OpenXMLExcel.ExportDataSet.xlsx");//12万行33s 50万行2分04秒 2分46 100万行 2分51秒 3分40秒 3分14秒 4.6G
            TimeSpan elapsed3 = sw.Elapsed;


            MessageBox.Show(elapsed1 + "-------" + elapsed2 + "------" + elapsed3);
        }