Экспорт в Excel занимает слишком много времени - PullRequest
0 голосов
/ 10 сентября 2018

У меня есть 7 DataTables (различного количества строк, столбцов) на моей странице asp.net (C #). Я отображаю данные на своей странице, используя GridViews. Существует требование экспортировать эти dataTables в файл Excel таким образом, что мне нужны данные первых 5 DataTables на первом листе, включая их графики, данные 6-го DataTable на 2-м листе и данные 7-го DataTable на 3-м листе того же файл Excel. Я реализовал решение, используя Excel Interop. Первый лист (имеющий 5 таблиц данных и их графики) загружается нормально. Но второй и третий листы занимают слишком много времени (4000-5000 строк данных и около 50 столбцов на каждом листе) при загрузке.

Есть ли способ их быстрой загрузки?

Я использую следующий код:

Worksheet xlWorksheet2 = null;

//Create Excel Sheets

xlSheets = ExcelApp.Sheets;

xlWorksheet2 = (Worksheet)xlSheets.Add(xlSheets[2], Type.Missing, Type.Missing, Type.Missing);

xlWorksheet2.Name = "Dump-1";

table = Dump1();
for (int j = 1; j < table.Columns.Count + 1; j++)
{
    ExcelApp.Cells[1, j] = table.Columns[j - 1].ColumnName;
}

// Storing Each row and column value to excel sheet
for (k = 0; k < table.Rows.Count; k++)
{
    for (int l = 0; l < table.Columns.Count; l++)
    {
        ExcelApp.Cells[k + 2, l + 1] = table.Rows[k].ItemArray[l].ToString();

    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...