From e9f9b7218d4c307a281cdfe8f93e6f3f00bbff28 Mon Sep 17 00:00:00 2001 From: sunkaixuan <610262374@qq.com> Date: Tue, 16 Apr 2024 12:51:26 +0800 Subject: [PATCH] Update select new json --- .../SqlSugar/Infrastructure/ContextMethods.cs | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/Src/Asp.Net/SqlSugar/Infrastructure/ContextMethods.cs b/Src/Asp.Net/SqlSugar/Infrastructure/ContextMethods.cs index d6ef0cd54..e37434313 100644 --- a/Src/Asp.Net/SqlSugar/Infrastructure/ContextMethods.cs +++ b/Src/Asp.Net/SqlSugar/Infrastructure/ContextMethods.cs @@ -667,7 +667,7 @@ namespace SqlSugar if (mappingKeys != null && mappingKeys.ContainsKey(item.Name)) { var key = mappingKeys[item.Name]; - Json(readerValues, result, name, typeName, key); + Json(readerValues, result, name, typeName, key,item); } else { @@ -759,7 +759,7 @@ namespace SqlSugar return result; } - private void Json(Dictionary readerValues, Dictionary result, string name, string typeName, string shortName = null) + private void Json(Dictionary readerValues, Dictionary result, string name, string typeName, string shortName = null,PropertyInfo item=null) { var key = (typeName + "." + name).ToLower(); if (readerValues.Any(it => it.Key.EqualCase(key))) @@ -775,6 +775,15 @@ namespace SqlSugar var jsonString = readerValues.First(it => it.Key.EqualCase(key)).Value; AddJson(result, name, jsonString); } + else if (item != null) + { + if (readerValues.Any(it => it.Key.EqualCase(item.Name + "." + name))) + { + var jsonString = readerValues.First(it => it.Key.EqualCase(item.Name + "." + name)).Value; + AddJson(result, name, jsonString); + + } + } } } private void Json(Dictionary readerValues, Dictionary result, string name, string typeName, PropertyInfo item)