这里是问题的描述:我有一个Web场[负载均衡]服务器,并且我运行了一个ASP.Net Web窗体站点,根本没有任何问题!最近没有任何变化,我开始收到此错误:
Event code: 4009
Event message: Viewstate verification failed. Reason: Viewstate was invalid.
Event time: 3/5/2019 1:24:31 AM
Event time (UTC): 3/5/2019 6:24:31 AM
Event ID: 40c56ea2a8ad4c059357fc4673003bbf
Event sequence: 359
Event occurrence: 1
Event detail code: 50204
我搜索/阅读了大多数Stack-overflow的线程,并努力确保所有内容都如Microsoft推荐的那样
我到目前为止所做的尝试,也许这可以帮助其他人解决这个问题:
尝试使用以下代码将视图状态存储在会话中:
protected override object LoadPageStateFromPersistenceMedium()
{
return Session["_ViewState"];
}
protected override void SavePageStateToPersistenceMedium(object viewState)
{
Session["_ViewState"] = viewState;
}
我试图在web.config文件中设置maxPageStateFieldLength="128"
,这会导致此错误:
Error Message: Invalid viewstate: Missing field: __VIEWSTATE2414.
Stack Trace:
at System.Web.UI.Page.get_RequestViewStateString()
将链接到IIS中站点的应用程序池中的“空闲超时”属性扩展为24小时而不是20分钟
我读了article
我在母版页中有ANTI_CSRF,这是在避免viewState问题之前-我再次检查了它根本没有引起此问题。
最重要的是,我仍然收到viewState无效异常,但希望此列表可以对其他人有所帮助。
答案 0 :(得分:0)
我遇到了同样的问题,我通过应用此问题中的建议来解决此问题: Here
它非常类似于将ViewState存储在会话中时所应用的方法,但是采用了另一种方法-希望这会有所帮助。