首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在Redis缓存中添加/更新/删除一个值

如何在Redis缓存中添加/更新/删除一个值
EN

Stack Overflow用户
提问于 2018-07-17 04:42:38
回答 1查看 4K关注 0票数 2

我刚接触分布式缓存,我有下面的代码,如果数据库表中的用户列表值不存在,它会将其存储在缓存中。

代码语言:javascript
复制
var cacheKey ="samplekey";

var userListdata = //contains list of users from a db table

var data = _distributedCache.GetString(cacheKey);
if (!string.IsNullOrEmpty(data))
{
    var tModel = JsonConvert.DeserializeObject<List<user>>(data);
    return new CommandActionResult<List<user>>(tModel, CommandActionStatus.NothingModified);
}
else
{
    var jsonData = JsonConvert.SerializeObject(userListdata);
    _distributedCache.SetString(cacheKey, jsonData);
    return new CommandActionResult<List<user>>(null, CommandActionStatus.NothingModified);
}

在我有一个新用户要从表中添加/删除/更新的情况下,如何添加/更新/删除samplekey缓存键?

EN

回答 1

Stack Overflow用户

发布于 2019-06-13 04:32:16

您可以更改方法。像保存redis缓存中的唯一keyValuePair一样,将每个用户保存在userListdata中。然后,您可以将其用于插入/更新/删除。

代码语言:javascript
复制
// add the users to azure redis cache
foreach (var user in userListdata)
{
    _distributedCache.StringSet(user.Id, JsonConvert.SerializeObject(user));
}
// update/delete your records
var data = _distributedCache.GetString(cacheKey);
if (!string.IsNullOrEmpty(data)){
    _distributedCache.KeyDelete(cacheKey);
    _distributedCache.StringSet(cacheKey, newValues);
}
// else insert a new one...
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51369828

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档