// saves any view and control state to appropriate viewstate provider. // this method shields the client from viewstate key generation issues protected override void SavePageStateToPersistenceMedium(object viewState) { // create a unique name string random = _random.Next(0, int.MaxValue).ToString(); string name = "ACTION_" + random + "_" + Request.UserHostAddress + "_" + DateTime.Now.Ticks.ToString(); ViewStateProviderService.SavePageState(name, viewState); ClientScript.RegisterHiddenField("__VIEWSTATE_KEY", name); }
// retrieves viewstate from appropriate viewstate provider. // this method shields the client from viewstate key retrieval issues. protected override object LoadPageStateFromPersistenceMedium() { string name = Request.Form["__VIEWSTATE_KEY"]; return(ViewStateProviderService.LoadPageState(name)); }