コード例 #1
0
 public string GetValue(string key)
 {
     lock (RedisDataBase)
     {
         return(RedisDataBase.StringGet(key));
     }
 }
コード例 #2
0
ファイル: Program.cs プロジェクト: yitongjianghu/SAEA
        static void SetTest(RedisDataBase db)
        {
            var key = "yswenliS";

            db.SAdd(key, "saea");

            db.SAdd(key, new string[] { "redis", "socket", "a", "b", "c", "d", "e", "f" });

            var e = db.SExists(key, "saea");

            var v1 = db.SPop(key);

            var v2 = db.SRandMemeber(key);

            var s = db.SRemove(key, "saea");

            var i1 = db.SMove(key, "yswenliS1", "redis");

            var l1 = db.SLen(key);

            var l2 = db.SMemebers("yswenliS1");

            var l3 = db.SInter(key, "yswenliS1");

            var i2 = db.SInterStore("yswenliS2", key, "yswenliS1");

            var l4 = db.SUnion(key, "yswenliS1");

            var i3 = db.SUnionStore("yswenliS3", key, "yswenliS1");

            var l5 = db.SDiff(key, "yswenliS1");

            var i4 = db.SDiffStore("yswenliS4", key, "yswenliS1");
        }
コード例 #3
0
 /// <summary>
 /// 删除用户缓存信息
 /// </summary>
 /// <param name="key">用户token</param>
 /// <returns>成功返回true,失败返回false</returns>
 public bool RemoveUserInfo(string key)
 {
     lock (RedisDataBase)
     {
         return(RedisDataBase.KeyDelete(key));
     }
 }
コード例 #4
0
 /// <summary>
 /// 是否存在用户信息
 /// </summary>
 /// <param name="token">用户token</param>
 /// <returns>存在返回true,不存在返回false</returns>
 public bool ContainsUserInfo(string key)
 {
     lock (RedisDataBase)
     {
         return(RedisDataBase.KeyExists(key));
     }
 }
コード例 #5
0
        private static void Refresh()
        {
            //所有用户基本信息缓存redis
            var dbHelper = new DBHelper(ConnectionString);

            var users = dbHelper.QuerySql <List <Dictionary <string, object> > >($"SELECT * FROM `user_view`;");

            foreach (var user in users)
            {
                try
                {
                    lock (RedisDataBase)
                    {
                        var redisuser = new UserInfo
                        {
                            account_name    = user["account_name"]?.ToString(),
                            account_type_id = user["account_type"]?.ToString(),
                            create_time     = Convert.ToDateTime(user["create_time"]?.ToString()).ToString("yyyy-MM-dd HH:mm:ss"),
                            id        = Guid.Parse(user["id"]?.ToString()),
                            passwrod  = user["passwrod"]?.ToString(),
                            real_name = user["realname"]?.ToString()
                        };
                        RedisDataBase.StringSet(redisuser.id.ToString(), Json2KeyValue.JsonConvert.SerializeObject(redisuser), new TimeSpan(365, 0, 0, 0));
                    }
                }
                catch (Exception ex)
                {
                    LogManager.GetCurrLogManager().Error(ex.ToString());
                }
            }
        }
コード例 #6
0
 /// <summary>
 /// 将用户信息保存在Redis缓存
 /// </summary>
 /// <param name="userInfo">用户信息</param>
 /// <param name="key">用户token</param>
 /// <returns>成功返回true,失败返回false</returns>
 public bool SetUserInfo(UserInfo userInfo, string key)
 {
     lock (RedisDataBase)
     {
         return(RedisDataBase.StringSet(key, Json2KeyValue.JsonConvert.SerializeObject(userInfo), new TimeSpan(365, 0, 0, 0)));
     }
 }
コード例 #7
0
 public bool SetValue(string value, string key)
 {
     lock (RedisDataBase)
     {
         return(RedisDataBase.StringSet(key, value, new TimeSpan(365, 0, 0, 0)));
     }
 }
コード例 #8
0
ファイル: RedisClient.cs プロジェクト: zouhunter/SAEA
 /// <summary>
 /// 获取redis database操作
 /// </summary>
 /// <param name="dbIndex"></param>
 /// <returns></returns>
 public RedisDataBase GetDataBase(int dbIndex = -1)
 {
     if (dbIndex >= 0 && dbIndex != DBIndex)
     {
         lock (_syncLocker)
         {
             if (dbIndex >= 0 && dbIndex != DBIndex)
             {
                 DBIndex = dbIndex;
                 Select(DBIndex);
             }
         }
     }
     if (_redisDataBase == null)
     {
         lock (_syncLocker)
         {
             if (_redisDataBase == null)
             {
                 _redisDataBase = new RedisDataBase(_cnn);
             }
         }
     }
     return(_redisDataBase);
 }
コード例 #9
0
ファイル: Batch.cs プロジェクト: zouhunter/SAEA
        /// <summary>
        /// Redis批量操作类
        /// </summary>
        /// <param name="redisDataBase"></param>
        internal Batch(RedisDataBase redisDataBase)
        {
            _redisCode = redisDataBase.RedisConnection.RedisCoder;

            SyncRoot = redisDataBase.RedisConnection.SyncRoot;

            _batchData = new List <BatchItem>();
        }
コード例 #10
0
 /// <summary>
 /// 获取Redis缓存的用户信息
 /// </summary>
 /// <param name="key">用户token</param>
 /// <returns>返回用户信息</returns>
 public UserInfo GetUserInfo(string key)
 {
     lock (RedisDataBase)
     {
         var usrinfo = Json2KeyValue.JsonConvert.DeserializeObject <UserInfo>(RedisDataBase.StringGet(key).ToString());
         return(usrinfo);
     }
 }
コード例 #11
0
ファイル: Program.cs プロジェクト: yitongjianghu/SAEA
        static void ZSetTest(RedisDataBase db)
        {
            var key = "ysweliZ";

            db.ZAdd(key, "aaa", 11);


            var z = db.ZRange("zaaa");
        }
コード例 #12
0
ファイル: Program.cs プロジェクト: yitongjianghu/SAEA
        static void HashTest(RedisDataBase db)
        {
            db.HSet("yswenliH", "saea1", "socket");

            var dic = new Dictionary <string, string>();

            dic.Add("saea2", "mvc");
            dic.Add("saea3", "rpc");
            db.HMSet("yswenliH", dic);

            var v1 = db.HGet("yswenliH", "saea1");

            var v2 = db.HMGet("yswenliH", new List <string>()
            {
                "saea1", "saea2", "saea3"
            });

            var v3 = db.HGetAll("yswenliH");

            var v4 = db.HGetKeys("yswenliH");

            var v5 = db.HGetValues("yswenliH");

            var l1 = db.HLen("yswenliH");

            var l2 = db.HStrLen("yswenliH", "saea1");

            var s = db.HScan("yswenliH");

            var b1 = db.HExists("yswenliH", "saea1");

            var b2 = db.HExists("yswenliH", "saea4");

            db.HDel("yswenliH", "saea1");

            db.HDel("yswenliH", new string[] { "saea2", "saea3" });

            v4 = db.HGetKeys("yswenliH");

            db.Del("yswenliH");

            var i1 = db.HIncrementBy("yswenliH", "inc", 1);

            i1 = db.HIncrementBy("yswenliH", "inc", 1);

            i1 = db.HIncrementBy("yswenliH", "inc", -1);

            i1 = db.HIncrementBy("yswenliH", "inc", -1);

            var i2 = db.HIncrementByFloat("yswenliH", "inc1", 0.1F);

            i2 = db.HIncrementByFloat("yswenliH", "inc1", 0.1F);

            i2 = db.HIncrementByFloat("yswenliH", "inc1", -0.1F);

            i2 = db.HIncrementByFloat("yswenliH", "inc1", -0.1F);
        }
コード例 #13
0
ファイル: Program.cs プロジェクト: yitongjianghu/SAEA
        static void ScanTest(RedisDataBase db)
        {
            var scan  = db.Scan();
            var hscan = db.HScan("haa22", 0);
            var sscan = db.SScan("aaa", 0);

            db.ZAdd("zaaa", "!#@%$^&*\r\n()^^%%&%@FSDH\r\n某月霜\r\n/.';lakdsfakdsf", 110);
            var zscan = db.ZScan("zaaa", 0);

            var zc = db.ZCount("zaaa");
            var zl = db.ZLen("zaaa");
        }
コード例 #14
0
 public Dictionary <string, object> GetAll()
 {
     lock (RedisDataBase)
     {
         lock (RedisServer)
         {
             var dictionary = new Dictionary <string, object>();
             foreach (var item in RedisServer.Keys())
             {
                 dictionary.Add(item, RedisDataBase.StringGet(item));
             }
             return(dictionary);
         }
     }
 }
コード例 #15
0
ファイル: RedisClient.cs プロジェクト: exition/SAEA
 /// <summary>
 /// 获取redis database操作
 /// </summary>
 /// <param name="dbIndex"></param>
 /// <returns></returns>
 public RedisDataBase GetDataBase(int dbIndex = -1)
 {
     lock (_syncLocker)
     {
         if (dbIndex >= 0 && dbIndex != _dbIndex)
         {
             _dbIndex = dbIndex;
             Select(_dbIndex);
         }
         if (_redisDataBase == null)
         {
             _redisDataBase             = new RedisDataBase(_cnn);
             _redisDataBase.OnRedirect += _redisDataBase_OnRedirect;
         }
         return(_redisDataBase);
     }
 }
コード例 #16
0
ファイル: Program.cs プロジェクト: yitongjianghu/SAEA
        static void GeoTest(RedisDataBase db)
        {
            db.GeoAdd("yswenliG", new GeoItem()
            {
                Name = "Palermo", Lng = 13.361389, Lat = 38.115556
            }, new GeoItem()
            {
                Name = "Catania", Lng = 15.087269, Lat = 37.502669
            });

            var list = db.GeoPos("yswenliG", "Palermo", "Catania");

            var dis = db.GeoDist("yswenliG", "Palermo", "Catania");

            var ms1 = db.GeoRandius("yswenliG", 15, 37, 200, GeoUnit.km);

            var ms2 = db.GeoRandiusByMember("yswenliG", "Palermo", 200);
        }
コード例 #17
0
ファイル: Program.cs プロジェクト: yitongjianghu/SAEA
        static void StringTest(RedisDataBase db)
        {
            db.Set("yswenli", "good man");

            var val = db.Get("yswenli");

            var keys = db.Keys();

            db.Del("yswenli");

            var e = db.Exists("yswenli");

            db.Expire("saea", 60);

            db.Set("saea", "redis");

            db.ExpireAt("saea", DateTimeHelper.Now.AddSeconds(30));

            var t1 = db.Ttl("saea");

            db.Append("saea", " socket nibility");

            var v = db.Get("saea");

            var v1 = db.GetSet("saea", "redis socket");

            var r = db.RandomKey();

            db.Persist("saea");

            var t2 = db.Ttl("saea");

            var i1 = db.Increment("inc1");

            i1 = db.Increment("inc1");
            i1 = db.Increment("inc1");

            i1 = db.Decrement("inc1");
            i1 = db.Decrement("inc1");
            i1 = db.Decrement("inc1");

            var i2 = db.IncrementBy("inc2", 1);

            i2 = db.IncrementBy("inc2", 1);
            i2 = db.IncrementBy("inc2", 1);

            i2 = db.DecrementBy("inc2", 1);
            i2 = db.DecrementBy("inc2", 1);
            i2 = db.DecrementBy("inc2", 1);

            var i3 = db.IncrementByFloat("inc3", 0.1F);

            i3 = db.IncrementByFloat("inc3", 0.1F);
            i3 = db.IncrementByFloat("inc3", 0.1F);

            i3 = db.IncrementByFloat("inc3", -0.1F);
            i3 = db.IncrementByFloat("inc3", -0.1F);
            i3 = db.IncrementByFloat("inc3", -0.1F);

            var len = db.Len("saea");
        }
コード例 #18
0
ファイル: Program.cs プロジェクト: yitongjianghu/SAEA
        static void ListTest(RedisDataBase db)
        {
            var key = "yswenliL";

            var i1 = db.LPush(key, "saea");

            var l1 = db.LLen(key);

            var i2 = db.LPush(key, new List <string>()
            {
                "redis", "socket"
            });

            var l2 = db.LLen(key);

            var i3 = db.LPushX(key, "a");

            db.LPushX(key, "a");

            var l3 = db.LLen(key);

            var i4 = db.RPush(key, "b");

            var l4 = db.LLen(key);

            var i5 = db.RPush(key, new List <string>()
            {
                "c", "d", "e"
            });

            var v6 = db.LInsert(key, "c", true, "f");

            var l5 = db.LLen(key);

            var i6 = db.RPushX(key, "f");

            var l6 = db.LLen(key);

            var v1 = db.LPop(key);

            var l7 = db.LLen(key);

            var v2 = db.BLPop(key, 10);

            var l8 = db.LLen(key);

            var v3 = db.BLPop(new List <string>()
            {
                key, "key1"
            }, 10);

            var l9 = db.LLen(key);

            var v4 = db.RpopLPush(key, "key1");

            var l10 = db.LLen(key);

            var l11 = db.LLen("key1");

            var v5 = db.LIndex(key, 0);

            var v7 = db.RPop(key);

            db.LSet(key, 0, "redis1");

            var v8 = db.LRang(key);

            var v9 = db.LTrim(key, 1, 3);

            var v10 = db.BRPop(key, 10);

            var v11 = db.BRPopLPush(key, "key1", 10);

            var v12 = db.LRemove(key, 100, "a");
        }