关于Sys.WebForms.PageRequestManagerServerErrorException

    在一个使用了ASP.NET AJAX框架的ASP.NET 2.0工程中,有一个页面在用户正常登录停留一段时间后(大约20分钟)在操作其中的服务器端控件(例如DropdownList,被UpdatePanel包围)时候就会弹出:

    “Sys.WebForms.PageRequestManagerServerErrorException: An unknown error occurred while processing the request on the server. The status code returned from the server was: 500. ”

    经过分析该异常似乎不是服务器端脚本弹出的,而是由客户端脚本导致的异常。Google了半天也没找到比较高的解决办法,通常大家会给出这样几种方法:

    1、在<%Page ...%>标签中增加 ValidateRequest="false", 经测试无效。

   2、在Web.config中增加<pages enableEventValidation="false"/>,经测试仍然无效。

   后来在一篇blog中看到另外一种迂回的解决办法,不是消除这个异常,而是用一种比较容易让用户理解的表述方式来替代这个异常,不至于让用户使用过程中无意间碰到这个异常的时候感到不解。具体做法如下:

    在<asp:ScriptManager>标签下插入以下javascript脚本:

   

    甚至可以在其中捕获到该异常的时候不弹出任何提示,而将页面跳转到指定的错误页面。如此一来比起单纯的弹出一串英文提示要友好许多了。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值