zoukankan      html  css  js  c++  java
  • ASP.NET揭秘读书笔记之十——使用DataSource缓存

         引言

         除了在页面或用户控件级别进行缓存外,也可以在数据源控件层面进行缓存。所有三个标准的数据源控件——SqlDataSource、ObjectDataSource和XmlDataSource控件都包含了用于缓存DataSource承载的数据属性。

        使用绝对缓存过期策略

    Code


          使用Sliding缓存过期策略
          如果需要缓存大量数据,则使用sliding过期策略比绝对缓存过期要更合理。当使用sliding缓存过期策划时,除非数据在指定时间内再次被请求,否则缓存就会失效。

    Code

          使用ObjectDataSource控件缓存
         ObjectDataSource控件支持和SqlDataSource控件一样的缓存属性。可以通过设置ObjectDataSource的EnableCaching、CacheDuration和CacheExpirationPolicy(可选)属性来缓存数据。

    Code


        上面代码中ObjectDataSource控件包含一个Selecting事件的事件处理函数。该事件处理函数在一个Label控件显示一个消息。因为Selecting事件在数据从缓存中取得的是不触发的,可以用该事件来判断数据是从缓存还是从Movie组件获得的。

    Code

          使用XmlDataSource控件缓存
          该控件默认启用缓存,并且自动和承载它的数据的XML文件创建一个文件依赖。XML文件修改,则该控件自动重新载入修改过的XML文件。


     

    Code


          创建数据源控件键值依赖
          可以在数据源控件和应用程序的一个缓存项目之间建立一个键值依赖。这样修改数据后删除了该缓存项目,对应的数据源控件会自动载入修改后的数据。

    Code

        注意上面的代码清单中的SqlDataSource控件包含了一个CacheKeyDependency属性,值为Moviekey。该属性在数据源控件缓存的数据和名为Moviekey的缓存项目之间建立了一个依赖。

        下面所示的Global.asax创建了初始化的Moviekey缓存项目。

    Code

        下面代码中,当插入一条新记录时,Moviekey项目会重新传入缓存中,此时,每一个依赖于这个键值的DataSource会自动载入更改后的数据。

    Code



     

    作者:边写边唱

    文章出处:http://www.cnblogs.com/zoupeiyang

    专注于用自助终端技术实现互联网+,有兴趣朋友欢迎关注   捷思科技

  • 相关阅读:
    恭喜你,你毕业了
    用VB.Net2008制作安装程序详细步骤(菜鸟级别,高手勿进)
    交通标志结构计算软件开发进程
    【工作笔记002】在TC中建立应用于出行分布的阻抗矩阵(最短路矩阵)
    VB.Net 2008 引用Excel12
    开博,开播。
    【推荐】万物兴歇——衰老与寿命的演化
    一张交叉口渠划的彩色平面图
    萦绕在头脑中的思路_我的编程梦们 【更新至2010.06.03】
    8月份的回顾
  • 原文地址:https://www.cnblogs.com/zoupeiyang/p/1455768.html
Copyright © 2011-2022 走看看