Я создаю файл Excel xlsm, используя библиотеку EPPlus в ASP.Net. Когда я создаю файл и открываю его, появляется следующее всплывающее сообщение:
Мы обнаружили проблему с некоторым содержимым в ExcelDemo.xlsm. Вы хотите, чтобы мы попытались восстановить столько, сколько мы можем? Если вы доверяете источнику этой книги, нажмите Да
Я использую следующий код
MemoryStream ms = new MemoryStream();
FileStream file_stream = new FileStream("C:\excelDemo.xlsm", FileMode.Open);
byte[] fileContent = null;
file_stream.CopyTo(ms);
file_stream.Close();
DataSet ds1 = new DataSet();
//will take dataset from from DB
FileInfo file = new FileInfo("ExcelDemo.xlsm");
using (OfficeOpenXml.ExcelPackage excelPackage = new OfficeOpenXml.ExcelPackage(ms))
{
foreach (DataTable dt in ds1 .Tables)
{
OfficeOpenXml.ExcelWorkbook excelWorkBook = excelPackage.Workbook;
OfficeOpenXml.ExcelWorksheet excelWorksheet = excelWorkBook.Worksheets[dt.TableName];
excelWorksheet.Cells["A20"].LoadFromDataTable(dt, false);
}
excelPackage.SaveAs(ms);
fileContent = excelPackage.GetAsByteArray();
}
ms.Close();
return new FileContentResult(fileContent, "application/vnd.ms-excel.template.macroEnabled.12") { FileDownloadName = "ExcelDemo.xlsm"};
Есть ли проблема в моем коде или это проблема Excel?