Я пытаюсь создать файл excel и сделать его доступным для загрузки. Но у меня есть некоторые проблемы с частью загрузки.Чтение потока памяти
Я использую EPPlus
для создания xml-файла. У меня это работает. Но только местные. Я не уверен, как принудительно загрузить файл.
Это мой код:
public Stream GetXlsxDocument(IQueryable data)
{
const string sheetName = "Sheet1";
var localFile = new FileInfo(@"C:\test2.xlsx");
var file = new FileInfo("test2.xlsx");
// Used for local creation
//ExcelPackage p = new ExcelPackage();
MemoryStream stream = new MemoryStream();
using (ExcelPackage p = new ExcelPackage(stream))
{
p.Workbook.Worksheets.Add("Sheet1");
ExcelWorksheet ws = p.Workbook.Worksheets[1];
ws.Name = sheetName;
ws.Cells.Style.Font.Size = 11;
ws.Cells.Style.Font.Name = "Calibri";
ws.SetValue(1, 1, "aaa"); // Test data
// Used for local creation
//p.SaveAs(localFile);
p.SaveAs(stream);
}
return stream;
}
Как я уже говорил ранее. Создание файла xlsx
локально на моем C: \ диске работает. Но как я могу заставить загрузить созданный файл xlsx
?
Прямо сейчас, предоставляя мне файл xlsx
из 0 байтов. Мне нужно будет вернуть поток, который не пуст. Любая идея, как я могу это сделать .. ??
Я думаю, что есть какая-то отсутствует информация здесь. Вы скажете «скачать», но является ли это обработчиком метода для HTTP-запроса? Вы возвращаете поток (не очень хорошая идея BTW), но кому? –