You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用StackExchange.Redis删除Redis Key时找不到Database.KeyDelete方法怎么办

解决StackExchange.Redis找不到KeyDelete方法的方案

问题排查与解决步骤

  • 确认安装的是官方Nuget包StackExchange.Redis,建议升级到2.0及以上稳定版本,非官方包或过旧版本会缺失标准接口。
  • 确认代码头部已引入正确命名空间:using StackExchange.Redis;,未引入命名空间会无法识别IDatabase的相关方法。
  • 修正原有代码中的语法错误:连接地址127.0.0..1多写了一个小数点,参数名大小写不匹配(定义的是大写Key,调用时用了小写key)。

修正后的单Key删除代码

using StackExchange.Redis;

// 注意:ConnectionMultiplexer建议全局单例复用,不要每次调用都新建实例,避免连接过多导致性能问题
private static readonly ConnectionMultiplexer _redis = ConnectionMultiplexer.Connect("127.0.0.1:6379");

public void DeleteCacheByKey(string Key)
{
    var db = _redis.GetDatabase();
    db.KeyDelete(Key);
}

批量删除指定前缀Key的实现(可选)

如果你需要删除所有以特定字符串开头的Key,可使用如下实现:

public void DeleteCacheByKeyPrefix(string prefix)
{
    var server = _redis.GetServer("127.0.0.1:6379");
    var db = _redis.GetDatabase();
    foreach (var redisKey in server.Keys(pattern: $"{prefix}*"))
    {
        db.KeyDelete(redisKey);
    }
}

内容的提问来源于stack exchange,提问作者JianYA

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.23 20:54:00