我在aspx页面上有一些代码,然后当用户加载页面时,它开始下载一个zip。看起来像这样:
Response.ContentType = "application/octet-stream";
Response.AppendHeader("Content-Disposition", "attachment; filename=" + fileSaveName);
Response.TransmitFile(zipPath);
Response.End();
问题是第一次遇到这个问题我得到以下错误:
zip文件存在且不在我的wwwroot中。如果我刷新页面,文件将下载正常。
如果我将代码包装在Try Catch中,我会收到一条带有消息的System.Threading.Threadabort异常:
Unable to evaluate expression because the code is optimized or a native frame is on top of the call stack.
注意:我实际上每次都会得到该异常。我猜它只是与Response.End
有关感谢您的帮助!
答案 0 :(得分:0)
Response.End可能会抛出一个例外来获取quick'n'dirty,所以这很好,但是,那个文件..我怀疑你的Response.End搞砸了,你试过做一个.Flush()第一?您可以通过使用Fiddler来检查服务器实际返回的内容