WEB开发网
开发学院WEB开发ASP.NET .NET缓存类和说明 阅读

.NET缓存类和说明

 2012-04-05 09:00:38 来源:WEB开发网   
核心提示: using System;using System.Collections.Generic;using System.Text;using System.Collections;using System.Web;using System.Web.Caching; namespace My.Bll{public cla

 using System;

using System.Collections.Generic;
using System.Text;
using System.Collections;
using System.Web;
using System.Web.Caching;
 
namespace My.Bll
{
public class BllCache
{
/*
//由 CacheItemPriority 枚举表示。缓存在退出对象时使用该值;具有较低成本的对象在具有较高成本的对象之前被从缓存移除。
//public enum CacheItemPriority
//{
// AboveNormal = 4,
// BelowNormal = 2,
// Default = 3,
// High = 5,
// Low = 1,
// Normal = 3,
// NotRemovable = 6
//}
* 如果 Cache 中已保存了具有相同 key 参数的项,则对此方法的调用将失败。若要使用相同的 key 参数覆盖现有的 Cache 项,请使用 Insert 方法。
 
无法同时设置 absoluteExpiration 和 slidingExpiration 参数。如果要让缓存项在特定时间到期,可将 absoluteExpiration 参数设置为特定时间,并将 slidingExpiration 参数设置为 NoSlidingExpiration。
 
如果要让缓存项在最后一次访问该项后的某段时间之后到期,可将 slidingExpiration 参数设置为到期间隔,并将 absoluteExpiration 参数设置为 NoAbsoluteExpiration。
//add和Insert的差别是
//public void Insert(string key, object value, CacheDependency dependencies, DateTime absoluteExpiration, TimeSpan slidingExpiration)
//{
// DateTime utcAbsoluteExpiration = DateTimeUtil.ConvertToUniversalTime(absoluteExpiration);
// this._cacheInternal.DoInsert(true, key, value, dependencies, utcAbsoluteExpiration, slidingExpiration, CacheItemPriority.Normal, null, true);
//}
 
//public object Add(string key, object value, CacheDependency dependencies, DateTime absoluteExpiration, TimeSpan slidingExpiration, CacheItemPriority priority, CacheItemRemovedCallback onRemoveCallback)
//{
// DateTime utcAbsoluteExpiration = DateTimeUtil.ConvertToUniversalTime(absoluteExpiration);
// return this._cacheInternal.DoInsert(true, key, value, dependencies, utcAbsoluteExpiration, slidingExpiration, priority, onRemoveCallback, false);
//}
*/
 
 
 
 
 
/// <summary>
///缓存对象
/// </summary>
protected static volatile Cache webCache = HttpRuntime.Cache;//( volatile)编译器就老老实实的每次都从内存中读取这个变量值,不是在CPU的缓存里读
 
/// <summary>
/// 获取数据缓存
/// </summary>
/// <param name="CacheKey">键</param>
public static object GetCache(string CacheKey)
{
if (CacheKey == null && CacheKey.Length == 0)
return null;
return webCache.Get(CacheKey);
}
 
 
/********************************************时间偏差的缓存*****************************************************************/

1 2 3 4  下一页

Tags:NET 缓存 说明

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接