找不到存储在Redis缓存中的数据

时间:2018-12-05 11:27:46

标签: azure-webjobs azure-redis-cache

我们已在Web api项目中使用Redis缓存将信息添加到缓存中。

我们在Azure Web Job中使用相同的Redis缓存连接字符串来获取存储在Web api项目中的缓存数据,但是由于它正在返回该区域的空数据,因此我们没有在Azure Web Job中获取缓存的数据。< / p>

 <add key="RedisCacheStorageHours" value="8" />

请帮助。

1 个答案:

答案 0 :(得分:0)

正如我测试过的那样,当您无法连接到Redis缓存时,它不会给出任何错误提示,并且其保管库为空。

此处是有关Use Azure Cache for Redis with a .NET application的文章。 详细步骤如下:

1。在app.config中设置连接字符串:

<appSettings>
    <add key="CacheConnection" value="<cache-name>.redis.cache.windows.net,abortConnect=false,ssl=true,password=<access-key>"/>
</appSettings>

2。安装StackExchange.Redis软件包。

3。使用以下代码检索缓存数据。

static void Main(string[] args)
{
    IDatabase cache = lazyConnection.Value.GetDatabase();
    string cacheCommand = "GET Message";
    Console.WriteLine("\nCache command  : " + cacheCommand + " or StringGet()");
    Console.WriteLine("Cache response : " + cache.StringGet("Message").ToString());
    lazyConnection.Value.Dispose();
 }

在本地测试良好后,您可以将控制台应用程序发布为azure webjobs,它将根据需要获取缓存的数据。