一个页面老是报这个错误,并不是所有的用户访问这个页面都出错,而是一个特殊的IP,这个IP访问这个页面总是报“Base-64 字符串的无效长度”,页面中没有做base-64的编码和解码操作,应该跟viewstate有关。谁碰到过类似的问题吗?如何解决的?

解决方案 »

  1.   

    确实奇怪,倒是遇到过Base64无效编码。没有遇到这样的问题。
    是不是用了加密解密的功能?你的Url?
      

  2.   

    ViewState确实是采用Base64进行编码,你看一这些IP的设置是怎么了
      

  3.   

    用户IP: 195.225.177.*
    SOURCE: mscorlib
    MESSAGE: Base-64 字符串的无效长度。
    TARGETSITE: Byte[] FromBase64String(System.String)
    STACKTRACE: at System.Convert.FromBase64String(String s) at System.Web.UI.LosFormatter.Deserialize(String input) at System.Web.UI.Page.LoadPageStateFromPersistenceMedium()
      

  4.   

    可能是由于ViewState不完整了,在页面Postback的时候丢失了部分,导致这个错误的,微软的文档有说到过这点。可是如果真的是这个原因的话,怎么样才能避免呢?