可以通过使用System.Web.Caching来访问Cache对象。通过使用System.Web中HttpContext类的Cache属性或者Page对象的Cache属性来设置与Cache对象关联的属性和方法。Cache对象允许你存储用户可以访问的关键变量。例如,可以在名为ShortState的Dataset中存储一些状态缩写词和状态名字,然后把Dataset对象存储在Cache中,以便使任何允许状态选择或显示的页面使用。从Cache载入页面减少了重新生成数据库和调用后台数据库的麻烦。
无法自动管理cache对象是ASP速高缓冲存储机制的一个局限性。使用Application或Session对象的开发人员只能自行编写代码来管理数据的建立和销毁。但是,ASP.NET的Cache对象能够通过添加关联和终止规则来实现Cache的自动化管理。当在ASP.NET的Cache中添加一个条款时,你就可以设置通用语言运行时间(CLR)自动删除条款的时间。这一自动删除取决于一定的环境,所以被称为cache关联。当一个条款从cache删除时,也可以说条款是无效的。使一个cached条款无效即为告诉CLR从cache中删除了一个条款。ASP.NET中的cache关联包括文件,关键字,时间特性。现在让我们详细的看看这些特性。
在很多情况下,尤其是当一个磁盘文件改变时,你都想把一个cache条款无效化。比如,当使用一个从外部系统生成或传入的数据时,你必须更新cache数据,特别是外部系统传入一个新的数据的时候。假设你的ASP.NET程序依赖于由主机供给的数据库,而这一主机可以将名为Customers.xml文件中的新数据传递到FTP站点。部分相关的源代码可参见于表A,表A中的代码使用了一个名为BuildDSFromXml的方法从FTP站点传入文件,然后CacheDependency对象又把文件从属传递到高速缓冲存储中。