C# 访问redis集群,怎么能够查到所有信息? 10C

使用StackExchange.Redis.dll访问redis,redis环境是集群环境,但是我根据集群环境对外的ip和端口访问获取数据GetDataBase(),然后使用模糊查询的时候,查到的信息不全。这个代码应该怎么实现才能查到想要的所有信息。
其中cacheResultArr的长度为1,我从redis管理工具查到的不只是1条。
private static ConnectionMultiplexer redis;
private static readonly object Locker = new object();
private IDatabase db { get; set; }
public static ConnectionMultiplexer Manager
{
get
{
if (redis == null)
{
lock (Locker)
{
if (redis == null || !redis.IsConnected)
{
redis = GetManager();
}
}
}

            return redis;
        }
    }
            private static ConnectionMultiplexer GetManager(string connectionString = null)
    {
        if (string.IsNullOrEmpty(connectionString))
        {
            connectionString = ConfigurationManager.AppSettings["redisAddress"];
        }

        return ConnectionMultiplexer.Connect(connectionString);
    }
public void Init() {
        //redis = ConnectionMultiplexer.Connect(connectString);
        db = Manager.GetDatabase();
        LogInfoHelper.Write("-----初始化,连接Redis-----");
                    string kpatternAfc = ConfigurationManager.AppSettings["kpatternAfc"];
        var script = "return redis.call('keys',@pattern)";
        var prepared = LuaScript.Prepare(script);
        var cacheResult = db.ScriptEvaluate(prepared, new { pattern = kpatternAfc });
                if (cacheResult.IsNull)
        {

            return;
        }
        else
        {
            string[] cacheResultArr = (string[])cacheResult;
            foreach (string key in cacheResultArr)
            {

                var entries = db.HashGetAll(key);
                foreach (var item in entries)
                {
                }
            }
        }
            }

1个回答

//20190407
RedisClient redis=new RedisClient(IP,PORT);
//得到所有的Key
List list=redis.SearchKeys("*");
//得到集合表
IDictionary list1=redis.GetAll(list);

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐