最新信息
您的位置:网站首页  » 建站专家 » 正文

.net页面输出有窍门微软的bug自己都无法解决呀

2019-07-02阅览次数: 150次
微软也有搞不定的时候呀!

终止线程 Response.End 在Asp.net 里面的正确使用

PRB:在使用 Response.End、Response.Redirect 或 server.Transfer 时出现 ThreadAbortException

症状
如果使用 Response.End、Response.Redirect 或 Server.Transfer 方法,将出现 ThreadAbortException 异常。您可以使用 try-catch 语句捕获此异常。

原因
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 方法。

 

 经测试, Response.End 才能正常的终止服务器继续输出内容到浏览器。

相关阅读
客服明星网站建设
  • 精灵,WEBOSS的共同所有者,专注Web服务器/用户体验设计师和前端开发,梦幻般的设计,注重细节蓝精灵,亚[详细]

  • 闵哥,能讲很标准的普通话,我们感觉比电台还好听。他总是戴耳机,时刻再听音乐...闵哥,网络资深从业[详细]

  • 蓝蓝,主要负责平面排版工作。一个有才华的设计师,她结合了她十多年作为销售和市场营销专业的经验蓝蓝[详细]

关于我们 - 联系我们 - 诚聘英才 - 网站文化 - 法律服务 - 网站地图 - 友情链接

合作伙伴 - 网站留言 - 留言列表 - 结算方式 - 在线订单 - 网站投票 - 网站地图

备案编号:鄂ICP备18023717号

©中国网站原创联盟服务机构·亚荣软件·宜昌网站制作

April Media is an independent Media Organization based in Yichang, China.

宜昌亚荣软件开发有限公司 ©版权所有

Copyright © 2010 - 2019 April Media. All Rights Reserved

TEL:13986805302;0717-8866860

UNID:91420506MA48BM2C2J

E-MAIL:web@mrtx.cn

在线下单    13986805302袁工/ 13581492345 闵工/营销中心:0717-8866860 QQ:84486631
网站测试期间,网站文字,图片,及其他资源,若侵犯您的权力,请联系我们!
  • 在线沟通,请点我在线咨询

  • 咨询热线:
    139868O53O2
    客服qq:
    84486631