/// <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); } } }
/// <summary> /// Clear all cache data /// </summary> public virtual void Clear() { var _muxer = RedisManager.GetMuxer(); var _db = RedisManager.GetDb(); foreach (var ep in _muxer.GetEndPoints()) { var server = _muxer.GetServer(ep); //we can use the code belwo (commented) //but it requires administration permission - ",allowAdmin=true" //server.FlushDatabase(); //that's why we simply interate through all elements now var keys = server.Keys(_db.Database); foreach (var key in keys) { _db.KeyDelete(key); } } }