症状
如果使用
Response.End、
Response.Redirect 或
Server.Transfer 方法,将出现
ThreadAbortException 异常。您可以使用
try-catch 语句捕获此异常。
原因
<!-- Inject Script Filtered -->
Response.End 方法终止页的执行,并将此执行切换到应用程序的事件管线中的
Application_EndRequest 事件。不执行
Response.End 后面的代码行。
此问题出现在
Response.Redirect 和
Server.Transfer 方法中,因为这两种方法均在内部调用
Response.End。
解决方案
要解决此问题,请使用下列方法之一:
|
对于 Response.End,调用 HttpContext.Current.ApplicationInstance.CompleteRequest 方法而不是 Response.End 以跳过 Application_EndRequest 事件的代码执行。 |
|
对于 Response.Redirect,请使用重载 Response.Redirect(String url, bool endResponse),该重载对 endResponse 参数传递 false 以取消对 Response.End 的内部调用。例如:
Response.Redirect ("nextpage.aspx", false);
如果使用此替代方法,将执行 Response.Redirect 后面的代码。 |
|
对于 Server.Transfer,请改用 Server.Execute 方法。 |
分享到:
相关推荐
两天在开发调试过程中,老是会出现在一个 "正在中止线程“(ThreadAbortException)的例外信息,很是疑惑,于是网上收集整理了一下,现在晒出来和大家分享,希望对你们有帮助
data end()执行完毕后要输出的字符,如果指定了 data 的值,那就意味着在执行完 response.end() 之后,会接着执行一条 response.write(data , encoding); encoding 对应data的字符编码 例子:
Response.Write 后连接Response.Redirect ,则Response.Write无法显示,直接跳转入Response.Redirect 的页面。 解决方式: Response.Write([removed]alert('成功修改'); [removed].href='index.aspx'...
ASP开发中可能有时候会用大段的if… else 的判断,不过如果是动态Response.write的内容,你想更方便阅读代码,可以用Response.End()来终端ASP的执行,也就类似于Break的用法,举个例子: 代码如下: if (userid=””...
文件下载response.setHeader()下载中文文件名乱码问题解决办法.pdf
Jsp利用response.sendRedirect、cookie传参
不论在asp中还是asp.net中response.end都是终止输出内容多用于调试程序的时候用处也很有用,类似设置断点,特别是你的程序有重大问题,如有死循环的时候一般的response.write 查看中间结果是无法看到的,这时在...
jsp response.sendRedirect不跳转的原因分析及解决.docx
result = response.read() result.decode('utf-8') jsonData = json.loads(result) 以上这篇python使用response.read()接收json数据的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多...
( response.setHeader()下载中文文件名乱码问题
如何用Response.Redirect方法传递汉字 如何用Response.Redirect方法传递汉字 .doc
Request和Response.txt 了解他们的作用 看了有益无害的东西~~
response.setHeader,页面初始化,内存设置等
response.setContentType()中有关文件上传的种类说明。
NULL 博文链接:https://yuhuiblog695685688425687986842568269.iteye.com/blog/2336132
NULL 博文链接:https://nethub2.iteye.com/blog/2023937