示例#1
0
 public void Remove <TIdentity, T>(string key, T model, TIdentity identity)
 {
     try
     {
         using (var connection = ConnectionMultiplexer.Connect(_configurationManager.Cache.RedisConnection))
         {
             var list = new RedisDictionary <TIdentity, T>(key, connection);
             list.Remove(identity);
         }
     }
     catch
     {
         // ignored
     }
 }
示例#2
0
 public void Insert <TIdentity, T>(string key, T model, TIdentity identity) where T : class
 {
     try
     {
         using (var connection = ConnectionMultiplexer.Connect(_configurationManager.Cache.RedisConnection))
         {
             var list = new RedisDictionary <TIdentity, T>(key, connection);
             list.Add(identity, model);
         }
     }
     catch
     {
         // ignored
     }
 }
示例#3
0
 private void SetList <TModel>(string key, IEnumerable <TModel> model, string keyColumn = "Id", int second = 300)
 {
     try
     {
         using (var connection = ConnectionMultiplexer.Connect(_configurationManager.Cache.RedisConnection))
         {
             var list = new RedisDictionary <int, TModel>(key, connection);
             list.AddMultiple(model.Select(x =>
                                           new KeyValuePair <int, TModel>(Convert.ToInt32(x.GetType().GetProperty(keyColumn)?.GetValue(x)), x)));
         }
     }
     catch
     {
         // ignored
     }
 }
示例#4
0
 public void Update <TIdentity, T>(string key, T model, TIdentity identity) where T : class
 {
     try
     {
         using (var connection = ConnectionMultiplexer.Connect(_configurationManager.Cache.RedisConnection))
         {
             var list = new RedisDictionary <TIdentity, T>(key, connection);
             if (list.ContainsKey(identity))
             {
                 list.Remove(identity);
             }
             list.Add(identity, model);
         }
     }
     catch
     {
         // ignored
     }
 }
示例#5
0
        public IEnumerable <TModel> GetList <TModel>(string key)
        {
            var result = default(IEnumerable <TModel>);

            try
            {
                using (var connection = ConnectionMultiplexer.Connect(_configurationManager.Cache.RedisConnection))
                {
                    var list = new RedisDictionary <int, TModel>(key, connection);

                    if (list.Values.Any())
                    {
                        result = list.Values;
                    }
                }
            }
            catch
            {
                // ignored
            }

            return(result);
        }