如何获取多层json数据,存成dictionary,并取最大最小值

1、json串如下所示

2、str是json串,然后分层去找串中所需的数据(hisVal数据),转化成dictionary

var str = HandlePIData.GetDataPI(fromtime, totime, "ZBWD"); //此语句获取的数据如上图所示,是用户自己编写的方法。

var dict = JsonConvert.DeserializeObject<Dictionary<object, object>>(str);

var data = JsonConvert.DeserializeObject<Dictionary<object, object>>(dict"data".ToString());

var hisval = JsonConvert.DeserializeObject<Dictionary<object, double>>(data"hisVal".ToString());

3、用minval.Value读取最小值数值

var minval = hisval.Aggregate((x, y) => x.Value > y.Value ? y : x);//取最小值

var maxval = hisval.Aggregate((x, y) => x.Value > y.Value ? x : y);//取最大值

dt_CC.Rows.Add("5904", "TUND_LOW_TEMP", "CC",maxval.Value- minval.Value, "");//使用最大值,最小值

相关推荐
Revolution6133 分钟前
React 组件重新渲染时,到底重新执行了什么
前端·react.js·面试
名字还没想好☜37 分钟前
Go 的 time.After 在 select 循环里内存泄漏:定时器堆积原理与 timer.Reset 正确姿势
java·数据库·golang·go·goroutine
圆山猫1 小时前
[Virtualization](三):RISC-V H-extension 与 Guest 执行模式
android·java·risc-v
caishenzhibiao1 小时前
期货先行者主图 同花顺期货通指标
java·c语言·c#
史呆芬1 小时前
分布式事务实战:微服务跨服务数据一致性解决方案
java·后端·spring cloud
IT界的老黄牛2 小时前
限流命中后该怎么办:直接丢、阻塞等待、延迟重投三种姿势的取舍
java·rocketmq·redisson·令牌桶·削峰·分布式限流
用户2181697049302 小时前
Flutter(四)Dart语法 空安全 运算符 流程控制
前端
许彰午2 小时前
政务督办的分合模式:主办协办的并发审批
前端·javascript·政务
用户69371750013842 小时前
AI时代,程序员该往哪走?
前端·后端
ttwuai2 小时前
GoFrame 后台日志清空失败:无 WHERE 删除为什么被拦住
前端·golang