using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Web;using System.Web.Caching;namespace ClusterService.Common{ public static class CacheHelper { public static object Cache(string key) { return HttpRuntime.Cache[key]; } public static void Cache(string key, object value) { HttpRuntime.Cache.Insert(key, value); } public static void Cache(string key, object value, DateTime utcDate) { HttpRuntime.Cache.Insert(key, value, null, utcDate, System.Web.Caching.Cache.NoSlidingExpiration); } public static void Cache(string key, object value, TimeSpan span) { HttpRuntime.Cache.Insert(key, value, null, System.Web.Caching.Cache.NoAbsoluteExpiration, span); } public static void Cache(string key, object value, DateTime utcDate, CacheItemPriority priority, CacheItemRemovedCallback callback) { HttpRuntime.Cache.Insert(key, value, null, utcDate, System.Web.Caching.Cache.NoSlidingExpiration, priority, callback); } public static void Cache(string key, object value, TimeSpan span, CacheItemPriority priority, CacheItemRemovedCallback callback) { HttpRuntime.Cache.Insert(key, value, null, System.Web.Caching.Cache.NoAbsoluteExpiration, span, priority, callback); } public static void Expire(string key) { var cache = HttpRuntime.Cache; if (cache[key] != null) { cache.Remove(key); } } [Obsolete("谨慎使用")] public static void ExpireStartsWith(string key) { var cache = HttpRuntime.Cache; var tor = cache.GetEnumerator(); while (tor.MoveNext()) { string itemKey = tor.Key.ToString(); if (itemKey.StartsWith(key)) { cache.Remove(itemKey); } } } }}