Redis defaultDatabase参数不能正常添加

时间:2016-06-07 13:23:27

标签: redis stackexchange.redis

所以我将一个密钥添加到redis数据库(使用StackExchange.Redis),该数据库具有连接字符串,如下所示:

server:6379,ssl=false,abortConnect=false,password=*****,defaultDatabase=1

我看到的行为是将密钥添加到默认数据库0而不是我在连接字符串中指定的,但是看起来字符串中的默认数据库是尝试从中检索密钥的位置。在我用明确的数据库集乱丢我的课之前的任何想法?

修改

从缓存中获取对象:

public object Get(string key, Type t = null)
{
    var cacheStore = Connection.GetDatabase();
    var cachedItem = cacheStore.StringGet(key);
    return !cachedItem.IsNull ? JsonConvert.DeserializeObject(cachedItem, t) : null;
}

要将对象添加到缓存中:

public void Add(string key, object value, TimeSpan? expiry)
{
    var cacheStore = Connection.GetDatabase();
    var serializedData = JsonConvert.SerializeObject(value);
    cacheStore.StringSet(key, serializedData, expiry);
}

如上所述,如果我将数据库ID传递给Connection.GetDatabase(),它可以正常工作,如果我依赖连接字符串中的defaultDatabase参数,则将项目添加到数据库0并尝试从数据库1中检索。

0 个答案:

没有答案