Update exp to sql

This commit is contained in:
sunkaixuna
2021-04-30 15:25:13 +08:00
parent 2508ab3a92
commit c3724a3eef

View File

@@ -90,11 +90,27 @@ namespace SqlSugar
break;
case ResolveExpressType.FieldSingle:
fieldName = GetSingleName(parameter, expression, isLeft);
base.Context.Result.Append(fieldName);
var fieldIsCommonTemp = IsFieldIsCommonTemp(isSetTempData,parameter);
if (fieldIsCommonTemp)
{
baseParameter.CommonTempData = fieldName;
}
else
{
base.Context.Result.Append(fieldName);
}
break;
case ResolveExpressType.FieldMultiple:
fieldName = GetMultipleName(parameter, expression, isLeft);
base.Context.Result.Append(fieldName);
var fieldIsCommonTemp2= IsFieldIsCommonTemp(isSetTempData, parameter);
if(fieldIsCommonTemp2)
{
baseParameter.CommonTempData = fieldName;
}
else
{
base.Context.Result.Append(fieldName);
}
break;
case ResolveExpressType.ArrayMultiple:
case ResolveExpressType.ArraySingle:
@@ -106,6 +122,15 @@ namespace SqlSugar
}
}
private bool IsFieldIsCommonTemp(bool isSetTempData, ExpressionParameter parameter)
{
if (parameter.BaseParameter == null)
return false;
var childExpression= parameter.BaseParameter.ChildExpression.ObjToString();
var expression=parameter.BaseParameter.CurrentExpression.ObjToString();
return isSetTempData&&((childExpression+".Date")==expression);
}
#endregion
#region Resolve Where