我有3个应用程序指向一个redis端点。我想每个应用程序使用单独的redis数据库。但当我试图在configurationoption中将defaultdatabase设置为1或2时,它仍然使用数据库0。我正在使用stackexchange redis。代码如下:
var configurationOptions = new ConfigurationOptions
{
EndPoints = { "myredis.redis.cache.windows.net" },
Password = "xxxxxxxxxxxxxxxxxxx",
Ssl = true,
ConfigurationChannel = "MyRedis",
ChannelPrefix = "MR",
DefaultDatabase = 1,
};
var connectionMultiplexer = ConnectionMultiplexer.Connect(configurationOptions);
var cacheClient = new StackExchangeRedisCacheClient(connectionMultiplexer, new JilSerializer(), database: 1);
现在使用icacheclient向缓存添加新密钥
var user = new User()
{
Id = 100,
Name = "John Doe"
};
var response = cacheClient.Add("mykey", user);
然后从缓存中检索添加的密钥
var addedUser= cacheClient.Get<string>("mykey");
我做错什么了吗?理想情况下,按照配置选项中的说明,它应该将密钥存储到db1,而不是存储到db0。
1条答案
按热度按时间gzszwxb41#
检索数据库对象时,应指定数据库编号。https://stackexchange.github.io/stackexchange.redis/basics.html#using-a-redis-database数据库