【发布时间】:2014-04-11 14:02:36
【问题描述】:
我有一个锚标记,如下所示:
<a href="/resource/download/3" target="_blank">MyResource.txt</a>
这会调用一个 MVC 控制器来返回一个文件:
public FileResult Download(int id)
{
var resource = _context.Find<Resource>(id);
var filePath = Path.Combine(Request.MapPath("~"), resource.FilePath);
var fileBytes = System.IO.File.ReadAllBytes(filePath);
return File(fileBytes, System.Net.Mime.MediaTypeNames.Application.Octet, resource.FileName);
}
这一切都很好。我遇到的问题是,在下载文件之前,屏幕会非常短暂地闪烁到空白选项卡。我确定这是由于 target="_blank" 属性。但是,如果我删除该属性,我的主页 URL 将更改为 /resource/download/3。这不是我想要的。如何在没有屏幕选项卡/flash 的情况下获得文件下载行为,或者是否有可能?
【问题讨论】:
-
你在使用 JavaScript 吗?也许是 jQuery?
标签: html asp.net-mvc