Exemple #1
0
        //更新集合
        public static bool SetUpdate <T>(string key, T oldValue, T newValue, string sql, string user, string HospitalID, string tableName)
        {
            bool b = false;

            if (RedisWriteHelper.KeyExists(key))
            {
                try
                {
                    var result = RedisWriteHelper.SetRemoveAsync(key, JsonSerializer.SerializeToString(oldValue));
                    if (result.Result)
                    {
                        var isSuccess = RedisWriteHelper.SetAddAsync(key, JsonSerializer.SerializeToString(newValue));
                        if (isSuccess.Result)
                        {
                            //BsMsgRecord msgRecord = new BsMsgRecord() { HospitalID = Convert.ToInt32(HospitalID), tableName = tableName, cacheKey = key, oldValue = JsonSerializer.SerializeToString(oldValue), newValue = JsonSerializer.SerializeToString(newValue), curUser = user, sqlRecord = sql, updateTime = DateTime.Now.ToString("yyyyMMddhhmmss") };
                            //Producer.Topic(ExchangeName, Routingkey, msgRecord);//发消息
                        }
                        b = isSuccess.Result;
                    }
                }
                catch (Exception)
                {
                    RedisWriteHelper.SetRemove(key, JsonSerializer.SerializeToString(newValue));
                    RedisWriteHelper.SetAdd(key, JsonSerializer.SerializeToString(oldValue));
                    return(false);
                }
            }
            return(b);
        }
Exemple #2
0
 public static bool SetUpdate(string key, string guid, string value)
 {
     lock (lockObj)
     {
         bool b = false;
         try
         {
             List <object> list = RedisReadExHelper.SetSearch(key, 0, "\"GUID\":\"" + guid + "\"", 1000000);
             if (list.Count > 0)
             {
                 //var result = RedisWriteHelper.SetRemoveAsync(key, value);
                 b = RedisWriteHelper.SetRemove(key, list[0].ToString());
                 ///Task<bool>  result = RedisWriteHelper.SetRemoveAsync(key, list[0].ToString());
                 if (b)
                 {
                     var isSuccess = RedisWriteHelper.SetAdd(key, value);
                     b = isSuccess;
                 }
             }
             else
             {
                 var isSuccess = RedisWriteHelper.SetAdd(key, value);
                 b = isSuccess;
             }
         }
         catch (Exception ex)
         {
             //LogHelper.ErrorLog(string.Format("SetUpdate失败,key:{0},guid:{1},错误信息:{2}", key, guid, ex.ToString()));
         }
         return(b);
     }
 }
Exemple #3
0
        //Model注释
        //根据IQueryable,获取指定的类型的部分数据
        //public static List<T> RetrieveSetByIQueryable<T>(string key, IQueryable<T> query) where T : class, new()
        //public static List<T> RetrieveSetByIQueryable<T>(string key, IQueryable<T> query) where T : Ninth.Model.BaseModel, new()
        //{
        //    var value = new List<T>();
        //    if (RedisWriteHelper.KeyExists(key))
        //    {
        //        var result = RedisWriteHelper.SetMembersAsync<T>(key);//内存取数
        //        return result.Result;
        //    }
        //    else
        //    {
        //        value = query.ToList();//数据取数据
        //        if (value.Count() > 0)
        //        {
        //            foreach (var item in value)
        //            {
        //                RedisWriteHelper.SetAddAsync(key, JsonSerializer.SerializeToString(item)).Wait();
        //                //RedisHelper.SetHash<T>(key, item.GUID, item);
        //                //RedisHelper.SetAsync(item.GUID, item).Wait();
        //            }
        //        }
        //    }
        //    return value;
        //}

        //添加到集合
        public static bool SetAdd(string key, string guid, string value)
        {
            lock (lockObj)
            {
                bool b = false;
                try
                {
                    //var result = RedisWriteHelper.SetAddAsync(key, JsonSerializer.SerializeToString(value));
                    var result = RedisWriteHelper.SetAdd(key, value);
                    b = result;
                }
                catch (Exception ex)
                {
                    //LogHelper.ErrorLog(string.Format("SetAdd失败,key:{0},guid:{1},错误信息:{2}", key, guid, ex.ToString()));
                }
                return(b);
            }
        }