我遵循微软的官方文档,使用redis作为分布式缓存选项。下面是di的重要代码片段,在我的 Startup.cs
文件。
services.AddStackExchangeRedisCache(options =>
{
options.Configuration = "test-redis.MyDomain.com.au:6379";
options.InstanceName = "DummyInstance";
});
我正面临一个奇怪的情况。保存值的下面一行执行时没有错误,但给定的值保存在“其他地方”,而不是在我的redis服务器中。
var options = new DistributedCacheEntryOptions().SetSlidingExpiration(TimeSpan.FromHours(24));
await _cache.SetStringAsync("MyKey", "MyValue", options);
是什么让我认为这个值保存在其他地方而不是redis?当我执行下面的行时,它会获取以前保存的值
var result = await _cache.GetStringAsync("MyKey"); //result is "MyValue" after this line
但是我在我的redis服务器上看不到这个值(使用redinsight,redis的gui工具)。
我很困惑。如果值没有保存到redis,那么它保存在哪里?它肯定被保存在某个地方,这就是为什么我们下次取回它时,它会好起来的原因。以及如何解决这个问题。为了解决这个问题,我使用了下面的连接字符串,它也不起作用。
options.Configuration = "test-redis.MyDomain.com.au:6379,defaultDatabase=0";
该项目是.net standard 2.1项目。
暂无答案!
目前还没有任何答案,快来回答吧!