Failed to load viewstate warning - Asp.Net Web Forms app

Hello,

I have an Asp.Net web forms application (4.5) that works fine but the event log on the IIS server is riddled with warning level entries about "Failed to load viewstate." (full message below).  My research indicates this can happen when dynamically adding controls improperly, but I have no dynamically added controls.  I do user web user controls, and I do use a master page.  The master page has a RadWindow (Telerik) which has a web user control inside of it's content template.  Also some of the other pages have web user controls.

Any ideas?  Thanks a lot.

Event code: 3005
Event message: An unhandled exception has occurred.
Event time: 10/10/2014 8:06:21 AM
Event time (UTC): 10/10/2014 12:06:21 PM
Event ID: 95721625fd21464789c949a0a448323e
Event sequence: 4468
Event occurrence: 549
Event detail code: 0
 
Application information:
    Application domain: /LM/W3SVC/2/ROOT/*******-1-130573917227018547
    Trust level: Full
    Application Virtual Path: /*******
    Application Path: D:\Websites\Intranet\*******\
    Machine name: *******19
 
Process information:
    Process ID: 11120
    Process name: w3wp.exe
    Account name: IIS APPPOOL\Intranet
 
Exception information:
    Exception type: HttpException
    Exception message: Failed to load viewstate.  The control tree into which viewstate is being loaded must match the control tree that was used to save viewstate during the previous request.  For example, when adding controls dynamically, the controls added during a post-back must match the type and position of the controls added during the initial request.
   at System.Web.UI.Control.LoadViewStateRecursive(Object savedState)
   at System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState)
   at System.Web.UI.Control.LoadViewStateRecursive(Object savedState)
   at System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState)
   at System.Web.UI.Control.LoadViewStateRecursive(Object savedState)
   at System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState)
   at System.Web.UI.Control.LoadViewStateRecursive(Object savedState)
   at System.Web.UI.Page.LoadAllState()
   at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)

 
 
Request information:
    Request URL: http://intranet.*******.com/*******/Default.aspx 
    Request path: /*******/Default.aspx
    User host address: 172.16.1.52
    User: *******\RobB
    Is authenticated: True
    Authentication Type: Negotiate
    Thread account name: IIS APPPOOL\Intranet
 
Thread information:
    Thread ID: 16
    Thread account name: IIS APPPOOL\Intranet
    Is impersonating: False
    Stack trace:    at System.Web.UI.Control.LoadViewStateRecursive(Object savedState)
   at System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState)
   at System.Web.UI.Control.LoadViewStateRecursive(Object savedState)
   at System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState)
   at System.Web.UI.Control.LoadViewStateRecursive(Object savedState)
   at System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState)
   at System.Web.UI.Control.LoadViewStateRecursive(Object savedState)
   at System.Web.UI.Page.LoadAllState()
   at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
 
 
Custom event details:
Martin BertramAsked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

Miguel OzSoftware EngineerCommented:
Hard to say without looking at your code, Some guidelines:
- Identify which control may have changed contents between requests that is triggering the issue. You may try by deleting all controls and then add one control at the time until the error happens.
- Check if you really need View state for the control found in previous step. If not needed set EnableViewState to false.

Please post sample code if more help needed.
0
Martin BertramAuthor Commented:
I suspect that it is occuring because I republished a new version of the application and users haven't closed the application on their browser.   Is there a way to catch this exception in the code and then perhaps force a redirect to the same page to reload it, or something to that effect?
0
Miguel OzSoftware EngineerCommented:
If that is the case, you are better off asking the users to logoff and restart server IIS.
Also the users must delete any temporary browser files to avoid any cached file being loaded instead of your new files.
0

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
ASP.NET

From novice to tech pro — start learning today.