ASP.NET缓存数据添加方法一览

开发 后端
ASP.NET使用缓存机制,将需要大量服务器资源来创建的对象存储在内存中。本文介绍ASP.NET缓存数据添加的六种方法。

ASP.NET缓存数据添加需求概述

ASP.NET使用缓存机制,将需要大量服务器资源来创建的对象存储在内存中。缓存这些类型的资源会大大改进应用程序的性能。缓存是有Cache类实现的,可以通过对缓存设置优先级CacheItemPriority枚举值控制内存不够时的“清理”优先顺序。还可以为缓存设置过期策略,以及为缓存设置依赖项。

ASP.NET缓存数据添加(将数据项添加到缓存中)

1、通过键值对添加

Cache["CacheItem"] = "Cached Item"
  • 1.

2、通过Insert 方法添加

Insert 方法向缓存添加项,并且已经存在与现有项同名的项,则缓存中的现有项将被替换。

Cache.Insert("CacheItem""Cached Item"); 
  • 1.

3、指定依赖项并添加(对添加到缓冲中的数据项指定依赖项)

数据项依赖一个字符串数组对象的情况:

string[] dependencies = { "Dependences" };  
Cache.Insert("CacheItem",  
    "Cached Item",  
    new System.Web.Caching.CacheDependency(null, dependencies)); 
  • 1.
  • 2.
  • 3.
  • 4.

数据项依赖一个XML文件的情况:

Cache.Insert("CacheItem""Cached Item",  
    new System.Web.Caching.CacheDependency(  
    Server.MapPath("XMLFile.xml"))); 
  • 1.
  • 2.
  • 3.

数据项依赖多个依赖项的情况:

System.Web.Caching.CacheDependency dep1 =   
    new System.Web.Caching.CacheDependency(Server.MapPath("XMLFile.xml"));  
string[] keyDependencies2 = { "CacheItem1" };  
System.Web.Caching.CacheDependency dep2 =   
    new System.Web.Caching.CacheDependency(null, keyDependencies2);  
System.Web.Caching.AggregateCacheDependency aggDep =   
    new System.Web.Caching.AggregateCacheDependency();  
aggDep.Add(dep1);  
aggDep.Add(dep2);  
Cache.Insert("CacheItem""Cached Item", aggDep); 
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.

4、设置过期策略并添加

添加一分钟绝对过期时间到缓存中:

Cache.Insert("CacheItem""Cached Item",  
    null, DateTime.Now.AddMinutes(1d),   
    System.Web.Caching.Cache.NoSlidingExpiration); 
  • 1.
  • 2.
  • 3.

添加10 分钟弹性过期时间到缓存中:

Cache.Insert("CacheItem""Cached Item",  
    null, System.Web.Caching.Cache.NoAbsoluteExpiration,  
    new TimeSpan(0, 10, 0)); 
  • 1.
  • 2.
  • 3.

5、设置优先级并添加

调用 Insert 方法,从 CacheItemPriority 枚举中指定一个值。 

Cache.Insert("CacheItem""Cached Item",  
    null, System.Web.Caching.Cache.NoAbsoluteExpiration,  
    System.Web.Caching.Cache.NoSlidingExpiration,  
    System.Web.Caching.CacheItemPriority.High, null); 
  • 1.
  • 2.
  • 3.
  • 4.

6、通过Add方法添加

Add 方法将返回您添加到缓存中的对象。另外,如果使用 Add 方法,并且缓存中已经存在与现有项同名的项,则该方法不会替换该项,并且不会引发异常。

string CachedItem = (string)Cache.Add("CacheItem",  
    "Cached Item"null,  
    System.Web.Caching.Cache.NoAbsoluteExpiration,  
    System.Web.Caching.Cache.NoSlidingExpiration,   
    System.Web.Caching.CacheItemPriority.Default,  
    null); 
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.

以上就介绍了ASP.NET缓存数据添加的六种方法。本文来自菩提屋:《缓存应用程序数据(一)》

【编辑推荐】

  1. ASP.NET缓存机制基础概念
  2. 再谈ASP.NET缓存机制:开发效率与优化的平衡
  3. .NET分布式缓存之Memcached执行速度检测
  4. 如何避免ASP.NET缓存占用系统资源
  5. .NET缓存机制探讨与比对
责任编辑:yangsai 来源: 菩提屋
相关推荐

2009-07-28 12:52:50

ASP.NET coo

2009-07-28 17:30:55

ASP.NET 2.0

2009-08-10 18:31:42

什么是ASP.NET

2009-07-20 17:48:44

ASP.NET MVC

2009-08-07 14:55:15

ASP.NET复合控件

2009-08-03 18:47:12

ASP.NET数据缓存

2009-08-03 18:35:51

ASP.NET数据缓存

2009-07-31 10:23:44

缓存页面ASP.NET缓存

2009-07-27 09:28:55

TableAdapte

2009-07-31 09:57:47

ASP.NET数据库缓

2009-07-29 10:35:51

ASP.NET缓存

2009-08-17 17:36:57

ASP.NET缓存数据

2009-07-29 14:35:34

页面输出缓存ASP.NET

2009-07-31 10:33:54

ASP.NET页面输出

2009-08-04 15:22:33

ASP.NET缓存机制

2009-07-28 10:04:54

添加WebPartASP.NET

2009-07-27 09:35:57

业务逻辑层

2009-05-11 13:48:00

ASP.NET 2.0缓存效率

2009-08-17 16:59:36

ASP.NET缓存机制

2009-07-24 17:08:31

添加站点地图asp.net
点赞
收藏

51CTO技术栈公众号