ASP.Net 发送大附件 - 阻止浏览,直到完成
本文关键字:浏览 Net 大附件 ASP | 更新日期: 2023-09-27 18:31:19
我在 IIS 上运行以下代码 ASP.Net:
try
{
Response.Clear();
Response.ContentType = "application/zip";
Response.AddHeader("content-disposition", "attachment;filename=MyBigFile.zip");
Response.TransmitFile(Server.MapPath("~/Stuff/MyBigFile.zip"));
Response.Flush();
}
catch (Exception ex)
{
Logger.Error("File download failed", ex);
}
问题是用户在下载完成之前无法导航到我网站上的任何其他页面(我发现这是因为看起来用户正在手动取消下载,因为它经常抛出异常The remote host closed the connection. The error code is 0x800703E3.
如何让下载在后台生成,并允许我的用户在下载时继续浏览网站?
看起来我已经找到了问题 - 会话状态。
在页面上设置<%@ EnableSessionState="ReadOnly" %>
似乎可以解决问题。