• 【转】去除.Net页面中的ViewState乱码


    C# code
    using System;
    using System.Data;
    using System.Configuration;
    using System.Web;
    using System.Web.Security;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using System.Web.UI.WebControls.WebParts;
    using System.Web.UI.HtmlControls;
    //添加引用
    using System.IO;
    using System.Threading;
    namespace CCL
    {
        /// <summary>
        /// BasePage 的摘要说明
        /// </summary>
        public class BasePage : System.Web.UI.Page
        {
            #region 解决ViewState过于庞大的问题
            //由于这里添加了目录,所以要建立App_Data/ViewState目录.
            protected override object LoadPageStateFromPersistenceMedium()
            {
                string viewStateID = (string)((Pair)base.LoadPageStateFromPersistenceMedium()).Second;
                string stateStr = (string)Cache[viewStateID];
                if (stateStr == null)
                {
                    string fn = Path.Combine(this.Request.PhysicalApplicationPath, @"App_Data/ViewState/" + viewStateID);
                    stateStr = File.ReadAllText(fn);
                }
                return new ObjectStateFormatter().Deserialize(stateStr);
            }

            protected override void SavePageStateToPersistenceMedium(object state)
            {
                string value = new ObjectStateFormatter().Serialize(state);
                string viewStateID = (DateTime.Now.Ticks + (long)this.GetHashCode()).ToString(); //产生离散的id号码
                string fn = Path.Combine(this.Request.PhysicalApplicationPath, @"App_Data/ViewState/" + viewStateID);
                //ThreadPool.QueueUserWorkItem(File.WriteAllText(fn, value));
                File.WriteAllText(fn, value);
                Cache.Insert(viewStateID, value);
                base.SavePageStateToPersistenceMedium(viewStateID);
            }
            #endregion
        }
    }

  • 相关阅读:
    Swing中如何比较好的判断鼠标左键双击
    学习rsyslog
    学习rsync
    在线手册
    Linux开源镜像站大全
    Linux命令
    Android使用sqlite数据库的使用
    Android学习笔记-listview实现方式之BaseAdapter
    Android学习笔记-保存数据的实现方法2-SharedPreferences
    Android学习笔记-获取手机内存,SD卡存储空间。
  • 原文地址:https://www.cnblogs.com/ae6623/p/4416774.html
Copyright © 2020-2023  润新知