2010年11月

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Web;
using System.Collections;
using System.Web.Caching;

namespace CCAS.BLL
{
    public class CacheHelper
    {
        /// 
        /// 建立缓存
        /// 
        public static object TryAddCache(string key, object value, CacheDependency dependencies, DateTime absoluteExpiration,
            TimeSpan slidingExpiration, CacheItemPriority priority, CacheItemRemovedCallback onRemovedCallback)
        {
            if (HttpRuntime.Cache[key] == null && value != null)
                return HttpRuntime.Cache.Add(key, value, dependencies, absoluteExpiration, slidingExpiration, priority, onRemovedCallback);
            else
                return null;
        }
        /// 
        /// 获取缓存
        /// 
        /// 
        /// 
        public static object GetCache(string key)
        {
            return HttpRuntime.Cache[key];
        }


        /// 
        /// 移除缓存
        /// 
        public static object TryRemoveCache(string key)
        {
            if (HttpRuntime.Cache[key] != null)
                return HttpRuntime.Cache.Remove(key);
            else
                return null;
        }

        /// 
        /// 移除键中带某关键字的缓存
        /// 
        public static void RemoveMultiCache(string keyInclude)
        {
            IDictionaryEnumerator CacheEnum = HttpRuntime.Cache.GetEnumerator();
            while (CacheEnum.MoveNext())
            {
                if (CacheEnum.Key.ToString().IndexOf(keyInclude.ToString()) >= 0)
                    HttpRuntime.Cache.Remove(CacheEnum.Key.ToString());
            }

        }

        /// 
        /// 移除所有缓存
        /// 
        public static void RemoveAllCache()
        {
            IDictionaryEnumerator CacheEnum = HttpRuntime.Cache.GetEnumerator();
            while (CacheEnum.MoveNext())
            {
                HttpRuntime.Cache.Remove(CacheEnum.Key.ToString());
            }
        }
    }
}

httpruntime_namespace

httpruntime

httpruntime_param

近日在cnblog里看见一兄弟写的一篇文章,里面提到了for和foreach的效率问题.

其实吧,对于这个问题我也只是在C# effective中看见一些比较.

对于其中到底有多少差异我不知道,而且我目前也还没有到研究效率的地步,只要写出来就已经不错了

而给其留言提出异议,不知道我的语气真是很冲还是他这样认为的,

不过我还是应该从中认识到一些问题.

或许我的确让他感觉到自己的语气很冲,当然我并没有很冲我也没有挑衅的意思,我只是在反问这究竟是自己得来的结果还是就直接抄别人的呢.要自己想想,

其实从一开始就是一个错误.

关于效率大家谈论的很多.但是这个问题本身就是一个问题了.

在这里提醒自己的就是一定要谦虚.作为干这行的平时跟机器打交道时间长了都忘了怎么'暧昧'得跟人说句话了.

呵呵呵

注意说话的态度语气