首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

16、运用数据源缓存

2012-11-05 
16、使用数据源缓存使用数据源缓存除了在页面或用户控件级别进行缓存之外,也可以在DataSource控件层面进行

16、使用数据源缓存
使用数据源缓存

除了在页面或用户控件级别进行缓存之外,也可以在DataSource控件层面进行缓存。
SqlDataSource
ObjectDataSource
XmlDataSource
缓存,LinqDataSource不支持缓存

使用DataSource控件缓存的一个好处是DataSource控件可以在数据更新时自动重新载入数据。
DataSource控件同样非常聪明,可以在多个页面间共享相同的数据。

1、使用绝对缓存过期策略
当使用绝对缓存过期策略时,DataSource承载的数据在内存中缓存一段特定的时间。如果数据不会很频率地修改,使用绝对缓存过期策略就很有用。
如果知道保存在数据库表中的记录一天只会被修改一次,没理由有人Web页面时,每次都从数据库中读取相同的数据。
注意:
当使用SqlDataSource控件缓存时,SqlDatasource控件的DataSourceMode属性必须设为DataSet(默认值),而不是DataReader.

SqlDataSource控件并不保证会缓存数据到CacheDuration指定的时间,理解这一点非常重要。
在内部,DataSource控件使用了Cache对象进行缓存。该对象支持自我净化功能(scavenging)。当内存资源变得很低时,Cache对象会自动从缓存中移除项目。

关闭数据库,也会显示数据。

2、使用弹性缓存过期策略
使用弹性缓存过期策略时,除非数据在指定的时间内再次被请求访问,否则缓存就会失效。

DataSourceSlidingCache.aspx



2011-5-30 21:47 danny

热点排行