翻遍了StackExchange.Redis的源码,没知道使用通配符进行删除的例子
redis本身是支持通配符命令的,但不知道StackExchange.Redis能不能实现,
可以使用通配符找出所有的key然后逐个删除。
下面是Nop里面的代码你可以参考下
/// <summary> /// Removes items by pattern /// </summary> /// <param name="pattern">pattern</param> public virtual void RemoveByPattern(string pattern) { var _muxer = RedisManager.GetMuxer(); var _db = RedisManager.GetDb(); foreach (var ep in _muxer.GetEndPoints()) { var server = _muxer.GetServer(ep); var keys = server.Keys(pattern: "*" + pattern + "*", database: _db.Database); foreach (var key in keys) _db.KeyDelete(key); } }
非常感谢,已经通过测试了