261  
查询码:00000911
Redis缓存 关于存储的数据格式探讨
作者: 魏漫漫 于 2020年03月26日 发布在分类 / 人防组 / 人防后端 下,并于 2020年03月26日 编辑
redis

最近两天在研究数据字典,存入redis缓存的功能。

先简单介绍一下,数据字典主要包含两张表数据(主表:字典名称,子表:字典元素内容)

刚开始关于数据存储的格式想的很简单,用每条数据的唯一标识作为redis的key.但是到最后获取所有数据字典的时候就出问题了,导致无法获取。直白的说,不能根据目录进行获取。至此已实现的存储方式只能放弃。

最后存储的方式如下图所示:

粘贴图片


粘贴图片


放入缓存实现方法:


 redisHelper.SortedSetAdd("CodeMain", cMain.CodeName, System.Convert.ToDouble(cMain.Sort.ToString()), "Main");//主表数据放入缓存
 redisHelper.StringSet(cMain.CodeName, redisItems, "Items", null);//子表数据放入缓存        
获取缓存数据:



IEnumerable<RedisValue> mainRedis =await  redisHelper.SortedSetRangeByRankAsync("CodeMain", "Main");//主表元素
if (mainRedis.Count() > 0)
     {                  
    foreach (var mItems in mainRedis)
           {
    var cItems = await redisHelper.StringGetAsync<List<RedisCodeItemDto>>(mItems.ToString(), "Items", null);//子表元素获取


注:redisHelper为辅助类。需要可私聊!



 推荐知识

 历史版本

修改日期 修改人 备注
2020-03-26 18:49:19[当前版本] 魏漫漫 创建版本

 附件

附件类型

PNGPNG

知识分享平台 -V 4.8.7 -wcp