最近做一个页面部份数据定时自动刷新功能,并且不出现刷屏效果时,用到 Ajax 控件时出现了
Sys.WebForms.PageRequestManagerServerErrorException: An unknown error occurred while processing the request on the server. The status code returned from the server was: 500 的问题。
网上查找到了几种解决办法
第一种方法:
在 web.config 中加入这句代码,不验证回发事件数据
<system.web>
<pages enableEventValidation="false"/>
</system.web>
问题:这句代码原本我的web.config中就存在,只是我的本地电脑和一部份电脑不会出现上面的错误,但有的电脑会出现,郁闷中……
第二种方法:
在 ScriptManager 内添加 EnablePartialRendering="false" 显示详细的错误信息。
如下:
<asp:ScriptManager ID="ScriptManager1" runat="server" EnablePartialRendering="false"/>
问题:这种方法会使页面有刷屏效果,我就是要解决刷屏问题,所以未能解决我的问题
第三种方法:
一般的原因都是页面存在潜在的危险字符 在 页首加入 ValidateRequest="false"
如下:
<%@ Page Language="C#" MasterPageFile="~/MasterPages/CompanyManage.master" AutoEventWireup="true" CodeFile="CompanyIntroEdit.aspx.cs" Inherits="CompanyIntroEdit" Title="Untitled Page" ValidateRequest="false" %>
最后一种方法还是比较有效的,目前尚未发现这种错误。