Я создал веб-приложение, используя. net core 3.1.1, и загрузил Microsoft.Office.Interop.Excel из Nuget. Причина, по которой я не использую Closed XML, так как он не работает при компиляции ... см. ссылку на stackO сообщение здесь
Пакет Nuget описывается следующим образом:
This the assembly necessary to do Office 2013 Excel interop
Version: 15.0.4795.1000
Ниже приведена ошибка, которую я получаю:
Could not load file or assembly 'office, Version=15.0.0.0
Ниже мой код
public static void exportToExcel1(DataTable dt, string fileName)
{
XL.Application app = new XL.Application();
app.DisplayAlerts = false;
try
{
XL.Workbook wb = app.Workbooks.Add(1);
XL.Worksheet ws = (XL.Worksheet)wb.Worksheets[1];
// export column headers
for (int colNdx = 0; colNdx < dt.Columns.Count; colNdx++)
{
ws.Cells[1, colNdx + 1] = dt.Columns[colNdx].ColumnName;
}
// export data
for (int rowNdx = 0; rowNdx < dt.Rows.Count; rowNdx++)
{
for (int colNdx = 0; colNdx < dt.Columns.Count; colNdx++)
{
ws.Cells[rowNdx + 2, colNdx + 1] = (dt.Rows[rowNdx][colNdx]).ToString();
}
}
//ws.Columns.AutoFit();
wb.SaveAs(fileName, Type.Missing, Type.Missing, Type.Missing,
Type.Missing, Type.Missing, XL.XlSaveAsAccessMode.xlNoChange,
Type.Missing, Type.Missing, Type.Missing,
Type.Missing, Type.Missing);
wb.Close(false, Type.Missing, Type.Missing);
}
finally
{
app.Quit();
}
}