带有Json字符串格式的表数据的查询

在日常的开发中,可能会遇到数据库的表结构设计中某个字段是一个Json字符串,并且在查询的时候需要多Json中的数据进行查询排序等操作。

一、带有Json字符串格式的表数据的查询

1.1 linq 查询
linq 查询
1
2
3
4
5
6
7

var userGDAA = (from gdaa in allGDAADatas
where gdaa.UserID == currentUserId
let recordDic = JsonConvert.DeserializeObject<Dictionary<string, string>>(gdaa.JsonResult)
orderby recordDic["S18"]
select gdaa).ToList();

lambada 查询
1
2
3
4
5
6
7
8
9
10
11
12

var userGDAA = allGDAADatas
.Where(gdaa => gdaa.UserID == currentUserId)
.Select(gdaa => new
{
Gdaa = gdaa,
RecordDic = JsonConvert.DeserializeObject<Dictionary<string, string>>(gdaa.JsonResult)
})
.OrderBy(x => x.RecordDic["S18"])
.Select(x => x.Gdaa)
.ToList();