mirror of
https://gitee.com/dotnetchina/SqlSugar.git
synced 2025-09-19 18:22:23 +08:00
Update exp to sql
This commit is contained in:
@@ -454,17 +454,24 @@ namespace SqlSugar
|
|||||||
}
|
}
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
internal static List<NewExpressionInfo> GetNewDynamicexpressionInfos(Expression item)
|
internal static List<NewExpressionInfo> GetNewDynamicexpressionInfos(Expression item, ExpressionContext context)
|
||||||
{
|
{
|
||||||
List<NewExpressionInfo> result = new List<NewExpressionInfo>();
|
List<NewExpressionInfo> result = new List<NewExpressionInfo>();
|
||||||
foreach (var binding in ((NewExpression)item).Arguments)
|
foreach (var binding in ((NewExpression)item).Arguments)
|
||||||
{
|
{
|
||||||
//var memberAssignment = binding;
|
NewExpressionInfo additem = new NewExpressionInfo();
|
||||||
//NewExpressionInfo additem = new NewExpressionInfo();
|
if (binding is MemberExpression)
|
||||||
//additem.Name = memberAssignment.Member.Name;
|
{
|
||||||
//additem.ShortName = (memberAssignment.Expression as MemberExpression).Expression + "";
|
var member = (MemberExpression)binding;
|
||||||
//additem.Value = "";
|
//var memberAssignment = binding;
|
||||||
//result.Add(additem);
|
//NewExpressionInfo additem = new NewExpressionInfo();
|
||||||
|
additem.RightName = member.Member.Name;
|
||||||
|
additem.ShortName = member.Expression + "";
|
||||||
|
additem.RightName = member.Member.Name;
|
||||||
|
additem.RightDbName = context.GetDbColumnName(member.Type.Name, additem.RightName);
|
||||||
|
//additem.Value = "";
|
||||||
|
result.Add(additem);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
@@ -469,7 +469,7 @@ namespace SqlSugar
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
newExpressionInfos = ExpressionTool.GetNewexpressionInfos(item, this.Context);
|
newExpressionInfos = ExpressionTool.GetNewDynamicexpressionInfos(item, this.Context);
|
||||||
}
|
}
|
||||||
foreach (NewExpressionInfo newExpressionInfo in newExpressionInfos)
|
foreach (NewExpressionInfo newExpressionInfo in newExpressionInfos)
|
||||||
{
|
{
|
||||||
|
@@ -436,6 +436,11 @@ namespace SqlSugar
|
|||||||
{
|
{
|
||||||
var key = typeName + "." + name;
|
var key = typeName + "." + name;
|
||||||
var info = readerValues.Select(it => it.Key).FirstOrDefault(it => it.ToLower() == key.ToLower());
|
var info = readerValues.Select(it => it.Key).FirstOrDefault(it => it.ToLower() == key.ToLower());
|
||||||
|
if (info == null && typeName !=null && typeName.Contains("<>f__AnonymousType"))
|
||||||
|
{
|
||||||
|
key = item.Name + "." + name;
|
||||||
|
info = readerValues.Select(it => it.Key).FirstOrDefault(it => it.ToLower() == key.ToLower());
|
||||||
|
}
|
||||||
var oldInfo = info;
|
var oldInfo = info;
|
||||||
if (mappingKeys!=null&&mappingKeys.ContainsKey(item.Name))
|
if (mappingKeys!=null&&mappingKeys.ContainsKey(item.Name))
|
||||||
{
|
{
|
||||||
|
Reference in New Issue
Block a user