zoukankan      html  css  js  c++  java
  • 四:理解Page类的运行机制(例:基于PageStatePersister的页面状态存取)

     有人说类似gridview datalist这样的控件最好不要用在高并发,IO大的网站中
    企业应用中为了快速开发到可以用一用
    因为这是一类"沉重"的组件
    我们姑且不谈这种看法的正确性(我个人觉得有道理)
    只谈它为什么笨重:

    因为这些控件给页面带来了大量的
    viewstate
    <input type="hidden" name="____VIEWSTATE" id="____VIEWSTATE" value=
    这就是页面状态
    一个页面里可能存在两种状态
    控件状态,视图状态

    page类是在
    LoadPageStateFromPersistenceMedium()
    SavePageStateToPersistenceMedium()
    存取页面状态的
    这两个方法都是可以重写的
    他们也可以把状态信息存储在别的媒介中
    我们这里通过重写PageStatePersister属性
    来实现自己的状态存取逻辑

    我们为了压缩viewstate里的数据,必须先实现一个工具类:如下

    Code

     下面重写PageStatePersister来实现自定义的页面状态存取

    Code

     项目的webconfig文件

    Code

    用来测试的一个页面

    Code

    用来测试的页面的cs文件
    注意里面重写了PageStatePersister

    Code

     

    实验做完
    大家运行一下就知道
    定制出来的viewstate比自动生成的要小很多

    最后评价一句
    传输给客户的东西是少了许多
    但是服务器的CPU要做的事情也多了
    用与不用还要自己权衡

  • 相关阅读:
    BUAA_OO_2020_Unit3 Summary
    BUAA_OO_2020_Unit2 Summary
    DataFrame的遍历
    ESMM提升CVR的论文summary
    FaceBook 关于提升CTR的论文研究
    OO终章·GRAND BATTLE
    第三单元规格作业博客总结
    OO电梯单元作业总结
    【OO多项式求导作业总结】
    提问回顾与个人总结
  • 原文地址:https://www.cnblogs.com/liulun/p/1378495.html
Copyright © 2011-2022 走看看