我有几个网站每天总共获得大约3000次综合浏览量,我每天大约有5到10次这个视图状态错误,在global.asax中被捕获:
System.Web.HttpException:无法验证数据。 System.Web.Configuration.MachineKeySection.GetDecodedData(Byte [] buf,Byte []修饰符,Int32 start,Int32 length,Int32& dataLength)在System.Web.UI.ObjectStateFormatter.Deserialize(String inputString)
我试过了:
机器密钥如下:
<machineKey validationKey="key goes here" decryptionKey="key goes here" validation="SHA1" decryption="AES" />
页面部分如下所示:
<pages renderAllHiddenFieldsAtTopOfForm="true" validateRequest="false" enableEventValidation="false" viewStateEncryptionMode="Never">
错误与应用程序池回收无关,我可以说,因为池设置为每100,000个请求回收一次。我没有运行Web场或Web园。我经常连续得到两个或三个这样的错误,好像用户收到错误,返回,然后再次点击链接。
有人有什么想法吗?
答案 0 :(得分:2)
在慢速互联网连接引起之前,我看到过“随机”ViewState错误。缓慢的连接将导致页面可视地呈现给用户,但它没有完全加载。然后,用户将对表单采取行动,从而发生“随机”问题。
查看是否可以将异常时间戳与IIS日志中请求的特定页面相关联。然后,您可以尝试使用Firefox Throttle等方法重新创建低带宽方案。
下面的类似问题证实了我的经历,也可能证实了你所看到的: