From d896c78424f4979a6b0d5972fa930583ebaf2dc2 Mon Sep 17 00:00:00 2001 From: sunkaixuan <610262374@qq.com> Date: Mon, 15 Apr 2024 20:53:56 +0800 Subject: [PATCH] Update select new json --- .../SqlSugar/Infrastructure/ContextMethods.cs | 20 ++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/Src/Asp.NetCore2/SqlSugar/Infrastructure/ContextMethods.cs b/Src/Asp.NetCore2/SqlSugar/Infrastructure/ContextMethods.cs index 1b0dfa2ba..d6ef0cd54 100644 --- a/Src/Asp.NetCore2/SqlSugar/Infrastructure/ContextMethods.cs +++ b/Src/Asp.NetCore2/SqlSugar/Infrastructure/ContextMethods.cs @@ -671,7 +671,7 @@ namespace SqlSugar } else { - Json(readerValues, result, name, typeName); + Json(readerValues, result, name, typeName,item); } } else if (columns.Any(it => it.IsJson)) @@ -777,6 +777,24 @@ namespace SqlSugar } } } + private void Json(Dictionary readerValues, Dictionary result, string name, string typeName, PropertyInfo item) + { + var key = (typeName + "." + name).ToLower(); + if (readerValues.Any(it => it.Key.EqualCase(key))) + { + var jsonString = readerValues.First(it => it.Key.EqualCase(key)).Value; + AddJson(result, name, jsonString); + } + else + { + key = (item.Name + "." + name).ToLower(); + if (readerValues.Any(it => it.Key.EqualCase(key))) + { + var jsonString = readerValues.First(it => it.Key.EqualCase(key)).Value; + AddJson(result, name, jsonString); + } + } + } private void AddJson(Dictionary result, string name, object jsonString) {