每当我使用 TransmitFile 发送文件时,sirte 都会被用户阻止,直到文件完成。IOW,用户无法浏览该站点。
如果用户取消传输,它仍然会阻塞,直到站点超时或完成数据发送。我不知道是哪个,但我知道,例如,如果我在开始下载后立即取消 30MB 文件,恢复所需的时间比 10MB 文件要长。
以下是相关代码:
Response.ContentType = "application/octet-stream";
Response.AppendHeader("Content-Disposition", contdisp);
Response.AddHeader("Content-Length", new FileInfo(fullfilename).Length.ToString());
Response.TransmitFile(fullfilename);
Response.Flush();