Рабочий лист Excel содержит 60 тыс. записей. Необходимо прочитать и сохранить в DataTable. Сейчас читаю построчно. Есть ли другой лучший способ использования ClosedXml.
DataTable dt = new DataTable();
var wb = new XLWorkbook(fileName, XLEventTracking.Disabled);
using (wb)
{
var ws = wb.Worksheet(1);
using (ws)
{
var headerRow = ws.Row(3);
int lastColumn = 32;
foreach (var col in headerRow.Cells(true))
{
dt.Columns.Add(col.Value.ToString());
}
foreach (var row in ws.Rows().Skip(3))
{
var dr = dt.NewRow();
for (int index = 0; index < lastColumn; index++)
{
dr[index] = row.Cell(index + 1).Value;
}
dt.Rows.Add(dr);
}
}
}
Microsoft.Ace.OleDb
, вы можете работать сExcel
так же, как с любой базой данных Sql. Вы просто делаете,dataAdapter.Fill(myTable)
и готово. Это хороший пример stackoverflow.com/a/7246529/1704458. - person T.S.   schedule 05.08.2017