ASP.NET 2.0 缓存翻译草稿

王朝asp·作者佚名  2006-11-24
窄屏简体版  字體: |||超大  

命名空间: System.Web.Caching ,这个空间是ASP.NET的基础结构中的重要部分,比如:session就是存储在cache中的。

Cache对象有两种级别的访问控制:public和private的。private是被系统组件保留使用的;只有public的才是留给程序员的接口,可以使用IEnumerable接口来枚举public状态下的数据。

ASP.NET 提供了3中级别的cache:

Page level---缓存整个页面;

Page fragment---可以缓存诸如.ascs等控件,是页面的一部分缓存;

Programmatic caching---通过public Cache API 编程缓存数据;

在 ASP.NET 2.0 中page level 的缓存机制被扩展到支持依赖数据库的缓存。也就是可以把page level页面缓存数据和数据库表中的数据设置为依赖。当数据表中数据变动后page level的缓存就自动失效,这可就解决了page level缓存时间不好控制的难处。

看个例子:

在ASP.NET 1.x 中page level的代码:

<%@ outputcache duration=”3600” varybyparam=”ProdID” %>

在ASP.NET 2.0 中的page level的代码:

<%@ outputcache duration=”3600” varybyparam=”ProdID” sqldependency=”Northwind:Products” %>

注意:虽然页面的缓存时间是3600秒,但是如果Northwind:Products表数据变动时,那么这个缓存就失效了。

说明:sqldependency 是一个新增的属性,由2部分组成:数据源和表名,配置在:web.config中,详见相关文档。

ASP.NET 2.0 还提供了SqlCacheDependency 和CacheDependency 两个缓存相关类。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航