Buduję aplikację konsolową, która przenosi dane do pliku Excela (przy użyciu biblioteki EPPlus). Zapisuję pakiet ExcelPackage jako MemoryStream i chcę dołączyć go do wiadomości e-mail. Jednak po otrzymaniu wiadomości e-mail plik programu Excel jest pusty - 0 bajtów.EPPlus z MemoryStream jako załącznik wiadomości e-mail - plik jest pusty
Myśli?
MemoryStream outputStream = new MemoryStream();
using (ExcelPackage package = new ExcelPackage(outputStream)) {
// export each facility's rollup and detail to tabs in Excel (two tabs per facility)
ExcelWorksheet facilityWorksheet = package.Workbook.Worksheets.Add(row["facility_id"].ToString());
ExcelWorksheet facilityDetail = package.Workbook.Worksheets.Add(row["facility_id"].ToString() + "-detail");
facilityWorksheet.Cells.LoadFromDataTable(rollupData, true);
facilityDetail.Cells.LoadFromDataTable(rawExceptions, true);
package.Save();
}
Oto kod do tworzenia e-maila:
Attachment attachment = new Attachment(outputStream, "ECO_exceptions.xlsx", "application/vnd.ms-excel");
Dziękuję, pomocny wpis, jeśli nie ma większego problemu, edytuj tak, aby package.Save(); znajduje się w sekcji USING. –