Update exp to sql

This commit is contained in:
sunkaixuan
2022-11-18 11:17:20 +08:00
parent 447bb688d6
commit 40ad748f6a

View File

@@ -494,13 +494,14 @@ namespace SqlSugar
var exp = base.BaseParameter?.BaseParameter?.BaseParameter?.CurrentExpression; var exp = base.BaseParameter?.BaseParameter?.BaseParameter?.CurrentExpression;
if (exp is LambdaExpression) if (exp is LambdaExpression)
{ {
var lamExp = (exp as LambdaExpression); SetShortName(exp);
if (lamExp.Parameters != null && lamExp.Parameters.Count == 1)
{
if (this.Context.SingleTableNameSubqueryShortName == null)
{
this.Context.SingleTableNameSubqueryShortName = lamExp.Parameters.First().Name;
} }
else if (exp is UnaryExpression)
{
exp = base.BaseParameter?.BaseParameter?.BaseParameter?.BaseParameter?.CurrentExpression;
if (exp is LambdaExpression)
{
SetShortName(exp);
} }
} }
} }
@@ -607,6 +608,18 @@ namespace SqlSugar
} }
} }
private void SetShortName(Expression exp)
{
var lamExp = (exp as LambdaExpression);
if (lamExp.Parameters != null && lamExp.Parameters.Count == 1)
{
if (this.Context.SingleTableNameSubqueryShortName == null)
{
this.Context.SingleTableNameSubqueryShortName = lamExp.Parameters.First().Name;
}
}
}
private void AppendModelByIIFMember(ExpressionParameter parameter, MethodCallExpressionModel model, Expression item) private void AppendModelByIIFMember(ExpressionParameter parameter, MethodCallExpressionModel model, Expression item)
{ {
parameter.CommonTempData = CommonTempDataType.Result; parameter.CommonTempData = CommonTempDataType.Result;