C# 由垃圾邮件发送者引起的EndOfStreamException

C# 由垃圾邮件发送者引起的EndOfStreamException,c#,asp.net,exception,webforms,viewstate,C#,Asp.net,Exception,Webforms,Viewstate,我的网站上有一个联系人页面,似乎被垃圾邮件发送者锁定了 错误本身是: System.IO.EndOfStreamException: Unable to read beyond the end of the stream. at System.IO.BinaryReader.ReadByte() at System.Web.UI.ObjectStateFormatter.DeserializeIndexedString(SerializerBinaryReader reader, Byt

我的网站上有一个联系人页面,似乎被垃圾邮件发送者锁定了

错误本身是:

    System.IO.EndOfStreamException: Unable to read beyond the end of the stream.
at System.IO.BinaryReader.ReadByte()
at System.Web.UI.ObjectStateFormatter.DeserializeIndexedString(SerializerBinaryReader reader, Byte token)
at System.Web.UI.ObjectStateFormatter.DeserializeValue(SerializerBinaryReader reader)
谷歌的搜索结果很少

我假设他们提交了一个无效的viewstate,但是异常没有行号,所以我被难住了

编辑:我的问题是,在哪里可以捕获此异常或检查viewstate的有效性。\

在webconfig上使用此选项(更改目标框架。这将使您更加安全。)



该字符串中的哪个属性会产生差异?更改它有什么影响?@NickG validateRequest=“true”enableViewStateMac=“true”enablessionstate=“true”validateRequest可防止恶意url请求和表单提交,从而实际阻止异常的发生,或者只是提高安全性?我不确定这种配置的效果是什么。
<pages validateRequest="true" viewStateEncryptionMode="Never" 
   enableViewStateMac="true" enableSessionState="true"
   controlRenderingCompatibilityVersion="4.0" clientIDMode="AutoID">
</pages>