/// <summary> /// get keys list /// </summary> /// <param name="redisDatabase"></param> private void getKeys(RedisDatabase redisDatabase) { CSRedis.RedisClient redisClient = redisDatabase.ParentServer.RedisClient; redisClient.Call("SELECT " + redisDatabase.Id); string[] keys = redisClient.Keys(redisDatabase.ParentServer.Connection.KeyPattern); char[] splits = redisDatabase.ParentServer.Connection.KeySeparator.ToCharArray(); redisDatabase.KeyCount = keys.Length; ObservableCollection <RedisKey> redisKeys = new ObservableCollection <RedisKey>(); if (keys.Length > 0) { Array.Sort(keys); redisKeys = RedisKeyUtils.getSplitKeys(keys, null); } this.Dispatcher.Invoke(new Action(delegate { redisKeysBox.ItemsSource = redisKeys; this.btnAddKey.IsEnabled = true; })); }