这就是我创建缓存键的方式
string cachekey_base = "IR_";
string symbol = "AUD";
static string id = "12345";
string cacheKey_Quote = $"{cachekey_base}{symbol}{id}Quote";
ID是随机生成的,因此如果我知道ID,则只需像这样删除缓存
MemoryCache.Default.Remove(key);
但是问题是Id
可以是任意随机数。
有没有一种方法可以使用contains关键字删除。
例如,在我的情况下,如果键包含“ IR_”,则删除所有缓存
任何帮助或建议都将不胜感激。
预先感谢`
答案 0 :(得分:1)
您可以过滤要删除的键,然后遍历这些键并删除它们 如下:
var removedKeys = MemoryCache.Default.Where( x=> x.Key.Contains("IR_")).Select(x=> x.Key).ToList();
foreach(var key in removedKeys)
MemoryCache.Default.Remove(key);