diff --git a/Src/Asp.NetCore2/SqlSugar/Abstract/QueryableProvider/QueryableHelper.cs b/Src/Asp.NetCore2/SqlSugar/Abstract/QueryableProvider/QueryableHelper.cs index 3646d703a..376bb2ba9 100644 --- a/Src/Asp.NetCore2/SqlSugar/Abstract/QueryableProvider/QueryableHelper.cs +++ b/Src/Asp.NetCore2/SqlSugar/Abstract/QueryableProvider/QueryableHelper.cs @@ -352,7 +352,7 @@ namespace SqlSugar { var childName = ((childListExpression as LambdaExpression).Body as MemberExpression).Member.Name; string parentIdName = GetParentName(parentIdExpression); - return UtilMethods.BuildTree(list, pk, parentIdName, childName, rootValue)?.ToList() ?? default; + return UtilMethods.BuildTree(this.Context,list, pk, parentIdName, childName, rootValue)?.ToList() ?? default; } private static string GetParentName(Expression> parentIdExpression) diff --git a/Src/Asp.NetCore2/SqlSugar/Utilities/UtilMethods.cs b/Src/Asp.NetCore2/SqlSugar/Utilities/UtilMethods.cs index f9fe27a2c..87c755c87 100644 --- a/Src/Asp.NetCore2/SqlSugar/Utilities/UtilMethods.cs +++ b/Src/Asp.NetCore2/SqlSugar/Utilities/UtilMethods.cs @@ -19,12 +19,12 @@ namespace SqlSugar public class UtilMethods { - public static IEnumerable BuildTree(IEnumerable list, string idName, string pIdName, string childName, object rootValue) + public static IEnumerable BuildTree(ISqlSugarClient db,IEnumerable list, string idName, string pIdName, string childName, object rootValue) { - var type = typeof(T); - var mainIdProp = type.GetProperty(idName); - var pIdProp = type.GetProperty(pIdName); - var childProp = type.GetProperty(childName); + var entityInfo = db.EntityMaintenance.GetEntityInfo(); ; + var mainIdProp = entityInfo.Type.GetProperty(idName); + var pIdProp = entityInfo.Type.GetProperty(pIdName); + var childProp = entityInfo.Type.GetProperty(childName); var kvList = list.ToDictionary(x => mainIdProp.GetValue(x).ObjToString()); var group = list.GroupBy(x => pIdProp.GetValue(x).ObjToString());