【发布时间】:2016-11-24 13:03:15
【问题描述】:
在我的一个 ASP.Net MVC 应用程序中,我有一个生成报告的后端。生成报告后,用户可以通过调用操作的链接下载报告。但是,我觉得提供文件的动作有点慢(4 到 8 秒),相比之下,其他动作是瞬时的。
这是提供服务的代码
// GET: /WS/Report/GetReport
[HttpGet]
public ActionResult GetReport(string fileName)
{
string path = Path.Combine(_reportGeneratedPath, fileName);
if (!System.IO.File.Exists(path))
return XmlMessage.Error("Report does not exist");
Response.ContentType = MimeMapping.GetMimeMapping(fileName);
Response.AddHeader("Content-Disposition", String.Format("attachment; filename={0}", fileName));
Response.AddHeader("Content-Length", new FileInfo(path).Length.ToString());
Response.WriteFile(path);
Response.End();
return null;
}
PS:出于安全原因,我无法切换到直接文件访问。
【问题讨论】:
标签: asp.net asp.net-mvc file download