i found an exemple of how to Stream the Excel spreadsheet back to the client but in aspx code. the code is below
using (var exportData = new MemoryStream())
{
workbook.Write(exportData);
string saveAsFileName = string.Format("MembershipExport-{0:d}.xls", DateTime.Now).Replace("/", "-");
Response.ContentType = "application/vnd.ms-excel";
Response.AddHeader("Content-Disposition", string.Format("attachment;filename={0}", saveAsFileName));
Response.Clear();
Response.BinaryWrite(exportData.GetBuffer());
Response.End();
}
i'am working with asp MVC 5 and webApi Controller. I want to migrate this code to WebApiController that returns HttpResponseMessage. Any propositions please ?
Will this help?
public FileResult DownloadFile()
{
// code to create workbook
using (var exportData = new MemoryStream())
{
workbook.Write(exportData);
string saveAsFileName = string.Format("MembershipExport-{0:d}.xls", DateTime.Now).Replace("/", "-");
byte[] bytes = exportData.ToArray();
return File(bytes, "application/vnd.ms-excel", saveAsFileName);
}
}
来源:https://stackoverflow.com/questions/30123388/how-to-download-a-xls-file-generated-by-npoi-in-asp-mvc