/// <summary>
/// 建立缓存
/// </summary>
public static object TryAddCache(string key, object value, CacheItemPriority priority)
{
if (HttpRuntime.Cache[key] == null && value != null)
return HttpRuntime.Cache.Add(key, value, null, Cache.NoAbsoluteExpiration, Cache.NoSlidingExpiration, priority, null);
else
return null;
}
/// <summary>
/// 建立定时不访问便移除的缓存
/// </summary>
public static object TryAddCache(string key, object value, TimeSpan slidingExpiration, CacheItemPriority priority)
{
if (HttpRuntime.Cache[key] == null && value != null)
return HttpRuntime.Cache.Add(key, value, null, Cache.NoAbsoluteExpiration, slidingExpiration, priority, null);
else
return null;
}
/// <summary>
/// 建立缓存,并在移除时执行事件
/// </summary>
public static object TryAddCache(string key, object value, DateTime absoluteExpiration, TimeSpan slidingExpiration, CacheItemPriority priority, CacheItemRemovedCallback onRemovedCallback)
{
if (HttpRuntime.Cache[key] == null && value != null)
return HttpRuntime.Cache.Add(key, value, null, absoluteExpiration, slidingExpiration, priority, onRemovedCallback);
else
return null;
}
/// <summary>
/// 移除缓存
/// </summary>
public static object TryRemoveCache(string key)
{
if (HttpRuntime.Cache[key] != null)
return HttpRuntime.Cache.Remove(key);
else
return null;
}
/// <summary>
/// 移除键中带某关键字的缓存
/// </summary>
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());
}
}
/// <summary>
/// 移除所有缓存
/// </summary>
public static void RemoveAllCache()
{
IDictionaryEnumerator CacheEnum = HttpRuntime.Cache.GetEnumerator();
while (CacheEnum.MoveNext())
{
HttpRuntime.Cache.Remove(CacheEnum.Key.ToString());
}
}
using System;
using System.Collections.Generic;
using System.Text;
using System.Collections;
using System.Web;
using System.Web.Caching;
namespace BLL
{
public class Caches
{
/// <summary>
/// 建立缓存
/// </summary>
public static object TryAddCache(string key, object value, CacheItemPriority priority)
{
if (HttpRuntime.Cache[key] == null && value != null)
return HttpRuntime.Cache.Add(key, value, null, Cache.NoAbsoluteExpiration, Cache.NoSlidingExpiration, priority, null);
else
return null;
}
/// <summary>
/// 建立定时不访问便移除的缓存
/// </summary>
public static object TryAddCache(string key, object value, TimeSpan slidingExpiration, CacheItemPriority priority)
{
if (HttpRuntime.Cache[key] == null && value != null)
return HttpRuntime.Cache.Add(key, value, null, Cache.NoAbsoluteExpiration, slidingExpiration, priority, null);
else
return null;
}
/// <summary>
/// 建立缓存,并在移除时执行事件
/// </summary>
public static object TryAddCache(string key, object value, DateTime absoluteExpiration, TimeSpan slidingExpiration, CacheItemPriority priority, CacheItemRemovedCallback onRemovedCallback)
{
if (HttpRuntime.Cache[key] == null && value != null)
return HttpRuntime.Cache.Add(key, value, null, absoluteExpiration, slidingExpiration, priority, onRemovedCallback);
else
return null;
}
/// <summary>
/// 移除缓存
/// </summary>
public static object TryRemoveCache(string key)
{
if (HttpRuntime.Cache[key] != null)
return HttpRuntime.Cache.Remove(key);
else
return null;
}
/// <summary>
/// 移除键中带某关键字的缓存
/// </summary>
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());
}
}
/// <summary>
/// 移除所有缓存
/// </summary>
public static void RemoveAllCache()
{
IDictionaryEnumerator CacheEnum = HttpRuntime.Cache.GetEnumerator();
while (CacheEnum.MoveNext())
{
HttpRuntime.Cache.Remove(CacheEnum.Key.ToString());
}
}
}
}