Multiple table query to dictionary BUG

This commit is contained in:
sunkaixuna 2021-11-03 01:17:29 +08:00
parent 9d79237a61
commit 659ab5f179
2 changed files with 7 additions and 0 deletions

View File

@ -170,6 +170,8 @@ namespace OrmTest
Name=SqlFunc.Subqueryable<Order>().Select(s=>s.Name)
}).ToList();
var test19 = db.Queryable<Order>().Select<ViewOrder>().ToList();
var test20 = db.Queryable<Order>().LeftJoin<Custom>((o, cs) =>o.Id==cs.Id)
.ToDictionary(it => it.Id, it => it.Name);
Console.WriteLine("#### Examples End ####");
}

View File

@ -1181,6 +1181,11 @@ namespace SqlSugar
this.QueryBuilder.ResultType = typeof(SugarCacheDictionary);
var keyName = QueryBuilder.GetExpressionValue(key, ResolveExpressType.FieldSingle).GetResultString();
var valueName = QueryBuilder.GetExpressionValue(value, ResolveExpressType.FieldSingle).GetResultString();
if (this.QueryBuilder.IsSingle() == false)
{
keyName = this.QueryBuilder.TableShortName+ "." + keyName;
valueName = this.QueryBuilder.TableShortName + "." + valueName;
}
var result = this.Select<KeyValuePair<string, object>>(keyName + "," + valueName).ToList().ToDictionary(it => it.Key.ObjToString(), it => it.Value);
return result;
}