向 Cache 中插入具有依赖项和到期策略的对象_引用至MSDN

目的:Flash读取来之XML文件的配置信息,XML配置信息不常改变。现在需要更新XML文件的各节点内容,在页面第一次加载时执行更新XML方法,并写入缓存;

         10分钟内再返回该页面则不执行更新语句,直接读缓存。

 

以下为MSDN提供的缓存参考示例。

语法:

C#

public void Insert(
    string key,
    Object value,
    CacheDependency dependencies,
    DateTime absoluteExpiration,
    TimeSpan slidingExpiration
)

 

参数:

key
类型:System.String
用于引用该对象的缓存键。

value
类型:System.Object
要插入缓存中的对象。

dependencies
类型:System.Web.Caching.CacheDependency
所插入对象的文件依赖项或缓存键依赖项。当任何依赖项更改时,该对象即无效,并从缓存中移除。如果没有依赖项,则此参数包含 null。

absoluteExpiration
类型:System.DateTime
所插入对象将到期并被从缓存中移除的时间。要避免可能的本地时间问题(例如从标准时间改为夏时制),请使用 UtcNow 而不是 Now 作为此参数值。如果使用绝对到期,则 slidingExpiration 参数必须为 NoSlidingExpiration。

slidingExpiration
类型:System.TimeSpan
最后一次访问所插入对象时与该对象到期时之间的时间间隔。如果该值等效于 20 分钟,则对象在最后一次被访问 20 分钟之后将到期并被从缓存中移除。如果使用可调到期,则 absoluteExpiration 参数必须为 NoAbsoluteExpiration。

 

调用:

Cache.Insert("DSN", connectionString, null, DateTime.Now.AddMinutes(2), TimeSpan.Zero);

注意:

由于 Insert 方法的该形式支持缓存依赖项,因此当该项没有依赖项时,必须在逗号分隔的参数列表中将 dependency 参数声明为 null(Visual Basic 中为 Nothing)。

 

以上均引用至MSDN link

 

        /// <summary>
        /// 设置当前应用程序指定CacheKey的Cache对象值
        /// </summary>
        /// <param name="CacheKey">索引键值</param>
        /// <param name="objObject">缓存对象</param>
        /// <param name="absoluteExpiration">绝对过期时间</param>
        /// <param name="slidingExpiration">最后一次访问所插入对象时与该对象过期时之间的时间间隔</param>
        public static void SetCache(string CacheKey, object objObject, CacheDependency dependency, DateTime absoluteExpiration, TimeSpan slidingExpiration)
        {
            _cache.Insert(CacheKey, objObject, dependency, absoluteExpiration, slidingExpiration);
        } 

调用:

            AppCache.SetCache("Cace", ojc, dep,DateTime.Now.AddMinutes(10),TimeSpan.Zero);//写入缓存
posted @ 2013-01-19 09:20  WikiZhao  阅读(288)  评论(0编辑  收藏  举报
Copyright©2013-2014 WikiZhao