0
我试图实现MVC 2文件下载链接,开放式XML Excel电子表格。如果我直接写它的工作原理如下响应...发送流方式浏览器作为附件在MVC 2
var data = MooseMartAdoManager.ExecuteSet("Report.StagAllCasesFullDetail");
var str = ExcelExportManager.GenerateSpreadsheet(data) as MemoryStream;
Response.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";
Response.AddHeader(
"content-disposition",
"attachment;filename=StagFullDetail" + DateTime.Now.ToString("yyyy-MM-dd-hh-mm-ss") + ".xlsx");
str.WriteTo(Response.OutputStream);
但是,由于我花时间抽象了所有关于如何收集数据以及为代码重用和IOC创建报告的逻辑,因此能够找出这种剂量为什么会起作用...
public FileStreamResult GetExcelDetailExport()
{
var data = MooseMartAdoManager.ExecuteSet("Report.StagAllCasesFullDetail");
var file = ExcelExportManager.GenerateSpreadsheet(data);
return File(file, "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
"StagFullDetail" + DateTime.Now.ToString("yyyy-MM-dd-hh-mm-ss") + ".xlsx");
}
我得到的只是txt格式的零字节文件。
那么什么是“正确”的MVC方式来处理这个问题呢?
不错的,谢谢:) – 2012-01-31 14:00:22