public class CacheStorage : ICacheStorage
{
public RedisClient client;
IApplicationSettings appsettings = ApplicationSettingsFactory.GetApplicationSettings();
public void Remove(string key)
{
using (client = new RedisClient(appsettings.RedisServer, int.Parse(appsettings.RedisPort),
appsettings.RedisPwd, appsettings.RedisDb))
{
client.Remove(key);
}
}
public T Retrieve<T>(string storageKey)
{
using (client = new RedisClient(appsettings.RedisServer, int.Parse(appsettings.RedisPort),
appsettings.RedisPwd, appsettings.RedisDb))
{
return client.Get<T>(storageKey);
}
}
public void Store<T>(string key, T data)
{
using (client = new RedisClient(appsettings.RedisServer, int.Parse(appsettings.RedisPort),
appsettings.RedisPwd, appsettings.RedisDb))
{
client.Set<T>(key, data, DateTime.Now.AddDays(5));
}
}
public void RemoveAll(string prefix)
{
using (client = new RedisClient(appsettings.RedisServer, int.Parse(appsettings.RedisPort),
appsettings.RedisPwd, appsettings.RedisDb))
{
var keys = client.SearchKeys(prefix + "*");
client.RemoveAll(keys);
}
}
public void EnqueueItemOnList(string key, string value)
{
using (client = new RedisClient(appsettings.RedisServer, int.Parse(appsettings.RedisPort),
appsettings.RedisPwd, appsettings.RedisDb))
{
client.EnqueueItemOnList(key, value);
}
}
public string DequeueItemFromList(string key)
{
using (client = new RedisClient(appsettings.RedisServer, int.Parse(appsettings.RedisPort),
appsettings.RedisPwd, appsettings.RedisDb))
{
return client.DequeueItemFromList(key);
}
}
}
Redis通用操作类
最新推荐文章于 2022-02-23 13:49:53 发布