C#缓存介绍(1)

本文介绍了C#中System.Web.Caching命名空间的缓存管理,包括Cache类的使用,如存储各种类型数据、缓存的生命周期及管理方法。重点讨论了Cache类的功能,如Add、Insert、Remove等方法,并提供了代码示例。此外,还提到了CacheDependency类在数据缓存及时更新中的作用。
摘要由CSDN通过智能技术生成

1 System.Web.Caching简介

本节从缓存命名空间的总体简介和组成结构入手,从整体上对System.Web.Caching进行概述。

1.1 System.Web.Caching概述

System.Web.Caching是用来管理缓存的命名空间。缓存就是将服务器端的数据暂时保存在客户端,方便用户的读取。缓存命名空间的父级空间是“System.Web”,由此可以看出,缓存通常用于Web网站的开发,包括在B/S项目中的开发。缓存的设计主要是考虑到网络带宽可能会延缓数据的提交和回发,如果将数据保存在客户端,用户可以直接从客户端读取数据,这样数据就是从本地提取的,不会再受网络的影响。

System.Web.Caching命名空间提供与缓存有关的所有操作类,具体包括哪些类将在下一节详细介绍。

1.2 System.Web.Caching命名空间内的类组成

缓存命名空间主要提供三种操作:缓存数据对象、对象的缓存依赖和数据库的缓存依赖。其中缓存任何对象都使用一个类Cache,但当缓存发生改变时,普通对象和数据库对象的依赖处理不同。

图16-2罗列的是在三层结构中缓存的部署情况。两个依赖类CacheDependency和SqlCache Dependency主要更改发生变化的缓存数据,起到通知的作用。当数据没有被缓存时,使用Cache类进行添加。

下面根据图16-2的部署,来介绍图中使用的缓存类。这些类的说明如表16-1所示。

 

图16-2 三层结构中缓存的部署图

表16-1 缓存命名空间中的类及其说明

 

类    名

 

说    明

 

Cache

 

对缓存对象的编辑类,其操作包括缓存的增、删、改

 

CacheDependency

 

基本缓存对象的依赖,当基本对象发生变化时,更新缓存内容

 

SqlCacheDependency

 

数据库缓存对象的依赖,当数据库中的数据变化时,更新缓存内容

2 管理缓存的类:Cache类

Cache类用来存储数据对象,并提供方法对这些对象进行编辑。本节主要介绍Cache类包含的方法,以及如何使用这些方法实现数据对象的缓存。

2.1 功能说明

Cache类属于字典类,其根据一定的规则存储用户需要的数据,这些数据的类型不受限制,可以是字符串、数组、数据表、Dataset和哈希表等。

使用Cache类的优点是当缓存的数据发生变化时,Cache类会让数据失效,并实现缓存数据的重新添加,然后通知应用程序,报告缓存的及时更新。

2.2 语法定义

Cache类的语法定义如下:

public sealed class Cache : IEnumerable

通过其定义可以发现,Cache类是“sealed”定义的类,表示此类被密封,不能被继承。同时Cache类还继承了IEnumerable接口,表示允许对集合中的数据进行枚举操作。

缓存的生命周期随着应用程序域的活动结束而终止,也就是说只要应用程序域依然处于活动状态,缓存就会一直保持,因为每个应用程序域都会创建一个缓存实例。此实例的信息通过HttpContext对象的Cache属性或Page对象的Cache属性获取。

下面的代码演示如何将数组数据添加到缓存中:

ArrayList myarray = new ArrayList();        //创建数组数据

myarray.Add("1.学习园地");

myarray.Add("2.交流论坛");

myarray.Add("3.帮助");

Cache.Add("Category", myarray);        //将数组添加到缓存中

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值