コード例 #1
0
 /// <summary>
 /// 无序集合随机弹出一个键,并删除该键,会将删除的值返回
 /// </summary>
 /// <param name="key">键</param>
 /// <returns></returns>
 public static string SetPop(string key)
 {
     WriteAssistant(() =>
     {
         ManagerAssistant.GetDatabase().SetPop(key);
     });
     return(ManagerMaster.GetDatabase().SetPop(key));
 }
コード例 #2
0
 /// <summary>
 /// 有序集合添加成员
 /// </summary>
 /// <param name="key">键</param>
 /// <param name="member">成员</param>
 /// <param name="score">排序数字</param>
 /// <returns></returns>
 public static bool SortedSetAdd(string key, string member, double score)
 {
     WriteAssistant(() =>
     {
         ManagerAssistant.GetDatabase().SortedSetAdd(key, member, score);
     });
     return(ManagerMaster.GetDatabase().SortedSetAdd(key, member, score));
 }
コード例 #3
0
 /// <summary>
 /// 无序集合添加成员
 /// </summary>
 /// <param name="key">键</param>
 /// <param name="member">成员</param>
 /// <returns></returns>
 public static bool SetAdd(string key, string member)
 {
     WriteAssistant(() =>
     {
         ManagerAssistant.GetDatabase().SetAdd(key, member);
     });
     return(ManagerMaster.GetDatabase().SetAdd(key, member));
 }
コード例 #4
0
 /// <summary>
 /// 判断无序集合是否包含指定值
 /// </summary>
 /// <param name="key">键</param>
 /// <param name="val">值</param>
 /// <returns>bool</returns>
 public static bool SetContains(string key, string val)
 {
     WriteAssistant(() =>
     {
         ManagerAssistant.GetDatabase().SetLength(key);
     });
     return(ManagerMaster.GetDatabase().SetContains(key, val));
 }
コード例 #5
0
 /// <summary>
 /// 从hash表中移除
 /// </summary>
 public static bool RemoveEntryFromHash(string hashId, string key)
 {
     WriteAssistant(() =>
     {
         ManagerAssistant.GetDatabase().HashDelete(hashId, key);
     });
     return(ManagerMaster.GetDatabase().HashDelete(hashId, key));
 }
コード例 #6
0
 /// <summary>
 /// 当存储的字符串是整数时,redis提供了一个实用的命令INCR,其作用是让当前键值递增,并返回递增后的值。如果key不存在,则自动会创建,如果存在自动+1
 /// </summary>
 public static long Increment(string key)
 {
     WriteAssistant(() =>
     {
         ManagerAssistant.GetDatabase().StringIncrement(key);
     });
     return(ManagerMaster.GetDatabase().StringIncrement(key));
 }
コード例 #7
0
 /// <summary>
 /// 进入hash表中
 /// </summary>
 public static bool SetEntryInHash(string hashId, string key, string value)
 {
     WriteAssistant(() =>
     {
         ManagerAssistant.GetDatabase().HashSet(hashId, key, value);
     });
     return(ManagerMaster.GetDatabase().HashSet(hashId, key, value));
 }
コード例 #8
0
 /// <summary>
 /// 设置缓存过期
 /// </summary>
 /// <param name="key"></param>
 /// <param name="datetime"></param>
 public static void SetExpire(string key, DateTime datetime)
 {
     key = redisConfigInfo.KeySuffix + key;
     WriteAssistant(() =>
     {
         ManagerAssistant.GetDatabase().KeyExpire(key, datetime);
     });
     ManagerMaster.GetDatabase().KeyExpire(key, datetime);
 }
コード例 #9
0
 public static void List_Add <T>(string key, T t)
 {
     key = redisConfigInfo.KeySuffix + key;
     WriteAssistant(() =>
     {
         ManagerAssistant.GetDatabase().ListRightPush(key, ConvertJson(t));
     });
     ManagerMaster.GetDatabase().ListRightPush(key, ConvertJson(t));
 }
コード例 #10
0
        /// <summary>
        /// 有序集合删除指定的value
        /// </summary>
        /// <param name="key">键</param>
        /// <param name="value">需要删除的值</param>
        /// <returns></returns>
        public static long SortedSetRemove(string key, params string[] value)
        {
            var valueList = new RedisValue[value.Length];

            for (var i = 0; i < value.Length; i++)
            {
                valueList[i] = value[i];
            }
            WriteAssistant(() =>
            {
                ManagerAssistant.GetDatabase().SortedSetRemove(key, valueList);
            });
            return(ManagerMaster.GetDatabase().SortedSetRemove(key, valueList));
        }
コード例 #11
0
 public static void List_RemoveAll <T>(string key)
 {
     key = redisConfigInfo.KeySuffix + key;
     WriteAssistant(() =>
     {
         if (ManagerAssistant.GetDatabase().KeyExists(key))
         {
             ManagerAssistant.GetDatabase().KeyDelete(key);
         }
     });
     if (ManagerMaster.GetDatabase().KeyExists(key))
     {
         ManagerMaster.GetDatabase().KeyDelete(key);
     }
 }
コード例 #12
0
        /// <summary>
        /// 客户端缓存操作对象
        /// </summary>
        public static IDatabase GetClientAssistant(long?db = -1)
        {
            IDatabase database;

            if (db < 0)
            {
                database = ManagerAssistant.GetDatabase((int)redisConfigInfo.DefaultDb);
            }
            else
            {
                database = ManagerAssistant.GetDatabase((int)db);
            }

            return(database);
        }
コード例 #13
0
 public static bool List_Remove <T>(string key, T t)
 {
     key = redisConfigInfo.KeySuffix + key;
     WriteAssistant(() =>
     {
         if (ManagerAssistant.GetDatabase().KeyExists(key))
         {
             ManagerAssistant.GetDatabase().ListRemove(key, ConvertJson(t));
         }
     });
     if (ManagerMaster.GetDatabase().KeyExists(key))
     {
         return(ManagerMaster.GetDatabase().ListRemove(key, ConvertJson(t)) > 0);
     }
     return(true);
 }
コード例 #14
0
 public static bool Remove(string key)
 {
     key = redisConfigInfo.KeySuffix + key;
     WriteAssistant(() =>
     {
         if (ManagerAssistant.GetDatabase().KeyExists(key))
         {
             ManagerAssistant.GetDatabase().KeyDelete(key);
         }
     });
     if (ManagerMaster.GetDatabase().KeyExists(key))
     {
         return(ManagerMaster.GetDatabase().KeyDelete(key));
     }
     return(true);
 }
コード例 #15
0
 public static bool Set <T>(string key, T objectValue, long lNumofSeconds = 0)
 {
     key = redisConfigInfo.KeySuffix + key;
     if (lNumofSeconds > 0)
     {
         WriteAssistant(() =>
         {
             ManagerAssistant.GetDatabase()
             .StringSet(key, ConvertJson(objectValue), TimeSpan.FromSeconds(lNumofSeconds));
         });
         return(ManagerMaster.GetDatabase()
                .StringSet(key, ConvertJson(objectValue), TimeSpan.FromSeconds(lNumofSeconds)));
     }
     WriteAssistant(() =>
     {
         ManagerAssistant.GetDatabase().StringSet(key, ConvertJson(objectValue));
     });
     return(ManagerMaster.GetDatabase().StringSet(key, ConvertJson(objectValue)));
 }
コード例 #16
0
 public static bool Set <T>(string key, T objectValue, bool isSetExpireTime = true)
 {
     key = redisConfigInfo.KeySuffix + key;
     if (isSetExpireTime)
     {
         WriteAssistant(() =>
         {
             ManagerAssistant.GetDatabase().StringSet(key, ConvertJson(objectValue),
                                                      TimeSpan.FromMilliseconds(redisConfigInfo.LocalCacheTime));
         });
         return(ManagerMaster.GetDatabase().StringSet(key, ConvertJson(objectValue),
                                                      TimeSpan.FromMilliseconds(redisConfigInfo.LocalCacheTime)));
     }
     WriteAssistant(() =>
     {
         ManagerAssistant.GetDatabase().StringSet(key, ConvertJson(objectValue));
     });
     return(ManagerMaster.GetDatabase().StringSet(key, ConvertJson(objectValue)));
 }