public static void InitializeConfiguration(IConfigurationRoot cfg) { Configuration = cfg; int port, poolsize, database; string ip, pass; if (!int.TryParse(cfg["ConnectionStrings:redis:port"], out port)) { port = 6379; } if (!int.TryParse(cfg["ConnectionStrings:redis:poolsize"], out poolsize)) { poolsize = 50; } if (!int.TryParse(cfg["ConnectionStrings:redis:database"], out database)) { database = 0; } ip = cfg["ConnectionStrings:redis:ip"]; pass = cfg["ConnectionStrings:redis:pass"]; Name = cfg["ConnectionStrings:redis:name"]; Instance = new CSRedis.ConnectionPool(ip, port, poolsize); Instance.Connected += (s, o) => { CSRedis.RedisClient rc = s as CSRedis.RedisClient; if (!string.IsNullOrEmpty(pass)) { rc.Auth(pass); } if (database > 0) { rc.Select(database); } }; }
private void RedisClient_Connected(object sender, EventArgs e) { CSRedis.RedisClient redisClient = (CSRedis.RedisClient)sender; RedisServer redisServer = RedisUtils.getRedisServer(redisClient); if (!string.IsNullOrEmpty(redisServer.Connection.Auth)) { redisClient.Auth(redisServer.Connection.Auth); } Debug.WriteLine("connection success..."); int dbCount = RedisUtils.getDatabasesCount(redisClient); ObservableCollection <RedisDatabase> databases = new ObservableCollection <RedisDatabase>(); for (int i = 0; i < dbCount; i++) { string dbName = "db" + i; databases.Add(new RedisDatabase() { Id = i, Name = dbName, ParentServer = redisServer }); } redisServer.Databases = databases; redisServer.IsConnectioning = false; redisServer.IsConnectioned = true; this.Dispatcher.Invoke(new Action(delegate { if (selectDatabaseItem != null) { selectDatabaseItem.IsExpanded = true; } })); }