private void forward(Type stateType, ViewStateInfo.EMode mode) { var stateInfo = new ViewStateInfo(stateType, mode); if (mode == ViewStateInfo.EMode.Stack) { if (stateInfoStack.Count > 0) { stateInfoStack[stateInfoStack.Count - 1].DestroyInstance(); } stateInfoStack.Add(stateInfo); } else if (mode == ViewStateInfo.EMode.Layer) { stateInfoStack.Add(stateInfo); } else if (mode == ViewStateInfo.EMode.Override) { var replaceMode = ViewStateInfo.EMode.Layer; if (stateInfoStack.Count > 0) { replaceMode = stateInfoStack[stateInfoStack.Count - 1].Mode; stateInfoStack[stateInfoStack.Count - 1].DestroyInstance(); stateInfoStack.RemoveAt(stateInfoStack.Count - 1); } stateInfo.Mode = replaceMode; stateInfoStack.Add(stateInfo); } ViewPipelineDebugger.Instance.Refresh(); }
private void forward(Type stateType, ViewStateInfo.EMode mode) { var stateInfo = new ViewStateInfo(stateType, mode); if (mode == ViewStateInfo.EMode.Stack) { if (stateInfoStack.Count > 0) { stateInfoStack[stateInfoStack.Count-1].DestroyInstance(); } stateInfoStack.Add(stateInfo); } else if (mode == ViewStateInfo.EMode.Layer) { stateInfoStack.Add(stateInfo); } else if (mode == ViewStateInfo.EMode.Override) { var replaceMode = ViewStateInfo.EMode.Layer; if (stateInfoStack.Count > 0 ) { replaceMode = stateInfoStack[stateInfoStack.Count - 1].Mode; stateInfoStack[stateInfoStack.Count - 1].DestroyInstance(); stateInfoStack.RemoveAt(stateInfoStack.Count - 1); } stateInfo.Mode = replaceMode; stateInfoStack.Add(stateInfo); } ViewPipelineDebugger.Instance.Refresh(); }
// // Summary: // Deserializes and loads persisted state from the repository when // a System.Web.UI.Page object initializes its control hierarchy. // // Exceptions: // T:System.Web.HttpException: // The System.Web.UI.SessionPageStatePersister.Load method could not successfully // deserialize the state contained in the request to the Web server. public override void Load() { string viewStateKey; if (UseDefaultViewStateHiddenField) { // Get key from __VIEWSTATE hidden field HiddenFieldPageStatePersister _hiddenFiledPagePersister = new HiddenFieldPageStatePersister(Page); _hiddenFiledPagePersister.Load(); viewStateKey = _hiddenFiledPagePersister.ViewState as string; } else { // Get key from custom hidden field //string viewStateKey = Page.Request.Params[ViewStateHiddenFieldName] as string; viewStateKey = Page.Request.Form[ViewStateHiddenFieldName] as string; } if (!string.IsNullOrEmpty(viewStateKey)) { ViewStateInfo info = (ViewStateInfo)Repository.GetViewState(viewStateKey); IStateFormatter formatter = this.StateFormatter; Pair statePair = (Pair)formatter.Deserialize((string)info.Value); ViewState = statePair.First; ControlState = statePair.Second; // Remove from repository after serve } }
public string SaveViewState(ViewStateInfo info) { string path = BasePath + Path.DirectorySeparatorChar + info.Id + ".dat"; using (FileStream stream = new FileStream(path, FileMode.Create, FileAccess.Write)) using (StreamWriter writer = new StreamWriter(stream)) { writer.Write(info.Value); writer.Close(); stream.Close(); } return(info.Id); }
private void createNode(ViewStateInfo viewStateInfo, int layer, int stack) { GameObject node = GameObject.Instantiate(Resources.Load<GameObject>("Node")) as GameObject; if (viewStateInfo.Instance != null) { node.GetComponent<Image>().material = Resources.Load<Material>("matNode"); } else { node.GetComponent<Image>().material = Resources.Load<Material>("matNodeGray"); } node.GetComponentInChildren<Text>().text = viewStateInfo.Type.Name; node.transform.SetParent(Root); node.transform.position = new Vector3(10 + layer * 90, 28 * stack); }
public ViewStateInfo GetViewState(string id) { ViewStateInfo info; string path = BasePath + Path.DirectorySeparatorChar + id + ".dat"; using (FileStream stream = new FileStream(path, FileMode.Open, FileAccess.Read)) using (StreamReader reader = new StreamReader(stream)) { info = new ViewStateInfo(reader.ReadToEnd()) { Id = id, CreateTime = DateTimeOffset.Now, LastVisitTime = DateTimeOffset.Now, }; reader.Close(); stream.Close(); } return(info); }
// // Summary: // Serializes any object state contained in the System.Web.UI.PageStatePersister.ViewState // or the System.Web.UI.PageStatePersister.ControlState property and writes the // state to the repository. public override void Save() { if (base.ViewState == null && base.ControlState == null) { return; } IStateFormatter formatter = this.StateFormatter; Pair statePair = new Pair(ViewState, ControlState); // Serialize the statePair object to a string. string serializedState = formatter.Serialize(statePair); ViewStateInfo info = new ViewStateInfo(serializedState); string viewStateKey = Page.Request.Form[ViewStateHiddenFieldName] as string; if (!string.IsNullOrEmpty(viewStateKey)) { info.Id = viewStateKey; } Repository.SaveViewState(info); if (UseDefaultViewStateHiddenField) { // Save key in __VIEWSTATE hidden field HiddenFieldPageStatePersister _hiddenFiledPagePersister = new HiddenFieldPageStatePersister(Page); _hiddenFiledPagePersister.ViewState = info.Id; _hiddenFiledPagePersister.Save(); } else { // Register hidden field to store cache key in Page.ClientScript.RegisterHiddenField(ViewStateHiddenFieldName, info.Id); } }
public string SaveViewState(ViewStateInfo info) { throw new NotImplementedException(); }
public string SaveViewState(ViewStateInfo info) { Cache.Set(info.Id, info, null); return(info.Id); }