I'm experiencing a similar, if not the same, issue. I am running an unmodified DNN 5.2.3 community edition installation on my dedicated Windows 2003 Server 64-bit with SS2005EE. I have no custom modifications of any kind.
One of my portal admin users (who just so happens to be my primary client who pays my bills) cannot stay logged in. I've logged in with her credentials and done extensive diagnostics. It will log her in successfully and then keep her logged in for one page view following log in (which page doesn't matter). The second page or link clicked logs her out (regardless of time, browser or any other variable). I'm using the standard DNN authentication provider with no modifications of any kind.
When the user is automatically logged out, the following error message is logged in my event log:
DefaultDataProvider: DotNetNuke.Data.SqlDataProvider, DotNetNuke.SqlDataProvider ExceptionGUID: 1da77820-ac2a-439d-8806-f3aa9dee2da8 InnerException: 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. FileName: FileLineNumber: 0 FileColumnNumber: 0 Method: System.Web.UI.Control.LoadViewStateRecursive StackTrace: Message: DotNetNuke.Services.Exceptions.PageLoadException: 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. ---> System.Web.HttpException: 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.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.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) --- End of inner exception stack trace --- Source:
I had previously had DNNMasters Multi-portal User Sharing Extreme edition installed but removed it as part of my diagnostics and it made no difference either way.
Thanks for any insights or help!
John