当我使用
时window.location ='<%= Url.Action(“DownloadFile”,“Home”)%>?fileId = id,
我完全在不同的屏幕中获取内容
但是如何打开它作为弹出窗口,如打开,保存,另存为对话框?
我正在点击ActionResult DownloadFile() 返回一个File对象。
答案 0 :(得分:0)
您可以使用File方法的第三个参数来指定文件名。当用户导航到此操作时,这会将Content-Disposition
HTTP响应标头设置为attachment
弹出“另存为”对话框:
public ActionResult DownloadFile(string fileId)
{
byte[] file = ...
// TODO: adjust the MIME type and filename extension to your case accordingly
return File(file, "text/plain", "foo.txt");
}
然后:
var id = '1234';
window.location.href = '<%= Url.Action("DownloadFile", "Home") %>?fileId=' + id;
工作得很好。