Вот описание проблемы: у меня есть серверы веб-фермы [с балансировкой нагрузки], и у меня был сайт веб-форм ASP.Net, работающий без каких-либо проблем! и недавно без каких-либо изменений я начал получать эту ошибку:
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;
}
Я попытался установить maxPageStateFieldLength="128"
в файле web.config, и это вызвало эту ошибку:
Error Message: Invalid viewstate: Missing field: __VIEWSTATE2414.
Stack Trace:
at System.Web.UI.Page.get_RequestViewStateString()
Расширение свойства Idle Time-out в пуле приложений, связанного с сайтом в IIS, до 24 часов вместо 20 минут
Я прочитал эту статью
У меня есть ANTI_CSRF на главной странице, и это было до появления проблемы viewState - я дважды проверил, что она вообще не вызывает этой проблемы.
Суть в том, что я все еще получаю недопустимое исключение viewState, но надеюсь, что этот список может помочь другим.