我想创建一个文件下载。这是它的原始代码:
Response.Clear()
Response.ContentType = "text/html"
Response.AddHeader("Content-Disposition", String.Format("attachment; filename=""Dashboard_{0}.html""", time))
Response.Write(html)
Response.End()
看起来还不错。文件已正常下载,但在“输出”中发现了以下消息。
mscorlib.dll中发生了类型'System.Threading.ThreadAbortException'的第一次机会异常
我试图寻找解决此异常的方法,我看到每个人都在谈论将Response.End()
替换为HttpContext.Current.ApplicationInstance.CompleteRequest()
。
当我尝试时,不再发生异常,但是结果甚至更糟-更改后未下载文件。就像我只是删除Response.End()
并不添加任何内容一样。
在这种情况下,当需要下载时我应该怎么做才能摆脱异常?还是应该忽略该异常,因为它似乎不会产生任何不利的结果?
答案 0 :(得分:0)
这是response.End()
为模仿ASP中End方法的行为,此方法尝试 引发[ThreadAbortException]异常。
也尝试删除
Response.Clear()