我使用以下Redis操作代码缓存了我的数据库:
public bool InitialiseCache()
{
try
{
_cache = Connection.GetDatabase();
return true;
}
catch (Exception ex)
{
return false;
}
}
我尝试调试和预览_cache
的值,但它不显示缓存数据(表)。我想确认GetDatabase()
方法缓存所有表。有没有办法预览所有Redis键或值?
答案 0 :(得分:1)
简答:
不,Redis的GetDatabase()方法不会缓存所有数据库表
长答案:
按照StackExchange.Redis on Github:
使用redis数据库
访问redis数据库非常简单:
IDatabase db = redis.GetDatabase();
从GetDatabase返回的对象是一个廉价的pass-thru对象,不需要存储。请注意,redis支持多个 数据库(虽然“集群”不支持);这可以 可选地在GetDatabase调用中指定。另外,如果你 计划使用异步API,你需要 Task.AsyncState有值,也可以指定:
int databaseNumber = ... object asyncState = ... IDatabase db = redis.GetDatabase(databaseNumber, asyncState);
拥有IDatabase后,只需使用redis API即可。请注意,所有方法都具有同步和异步 实现。符合微软的命名指导, 异步方法都结束了...异步(...),并且完全可以等待 等