使用Remove清空所有Cache
- 概述
清空缓存主要通过Remove()方法,但是只能通过传入一个Key,清空一个。GetEnumerator()方法用于获取所有缓存项。MoveNext()用于将位置移动到下一个缓存项。如果想清空所有缓存,由于Cache类没有提供RemoveAll()方法,所以可以通过以下方式实现:
public void removeAllCache()
{
IDictionaryEnumerator DicCache = HttpRuntime.Cache.GetEnumerator();
int count = HttpRuntime.Cache.Count;
for (int i = 0; i < count; i++)
{
DicCache.MoveNext();
HttpRuntime.Cache.Remove(DicCache.Entry.Key.ToString());
}
}