mirror of
https://gitee.com/dotnetchina/SqlSugar.git
synced 2025-09-20 02:29:39 +08:00
Update exp to sql
This commit is contained in:
@@ -124,6 +124,11 @@ namespace OrmTest
|
||||
customName2 = SqlFunc.Subqueryable<Custom>().Where("it.CustomId = id").Where(s => true).Select(s => s.Name)
|
||||
}).ToList();
|
||||
|
||||
var list1 = db.Queryable<Order>().Select(it => new
|
||||
{
|
||||
id = SqlFunc.Subqueryable<Custom>().Where(s => s.Id == 1).Sum(s => s.Id) * 1
|
||||
}).ToList();
|
||||
|
||||
var list2 = db.Queryable<Order>().Where(it =>
|
||||
SqlFunc.Subqueryable<OrderItem>()
|
||||
.LeftJoin<OrderItem>((i,y)=>i.ItemId==y.ItemId)
|
||||
|
@@ -238,6 +238,7 @@ namespace SqlSugar
|
||||
{
|
||||
resolveExpress.PgSqlIsAutoToLower = true;
|
||||
}
|
||||
resolveExpress.RootExpression = expression;
|
||||
resolveExpress.JoinQueryInfos = Builder.QueryBuilder.JoinQueryInfos;
|
||||
resolveExpress.IsSingle = IsSingle();
|
||||
resolveExpress.MappingColumns = Context.MappingColumns;
|
||||
|
@@ -45,6 +45,7 @@ namespace SqlSugar
|
||||
public IgnoreColumnList IgnoreComumnList { get; set; }
|
||||
public bool PgSqlIsAutoToLower { get; set; }
|
||||
public List<SqlFuncExternal> SqlFuncServices { get; set; }
|
||||
public Expression RootExpression { get; set; }
|
||||
public bool IsSingle
|
||||
{
|
||||
get
|
||||
@@ -129,6 +130,7 @@ namespace SqlSugar
|
||||
copyContext.ParameterIndex = this.ParameterIndex;
|
||||
copyContext.PgSqlIsAutoToLower = this.PgSqlIsAutoToLower;
|
||||
copyContext.IsSingle = this.IsSingle;
|
||||
copyContext.RootExpression = this.RootExpression;
|
||||
return copyContext;
|
||||
}
|
||||
public ExpressionContext GetCopyContextWithMapping()
|
||||
@@ -144,6 +146,7 @@ namespace SqlSugar
|
||||
copyContext.RefreshMapping = this.RefreshMapping;
|
||||
copyContext.PgSqlIsAutoToLower = this.PgSqlIsAutoToLower;
|
||||
copyContext.IsSingle = this.IsSingle;
|
||||
copyContext.RootExpression = this.RootExpression;
|
||||
return copyContext;
|
||||
}
|
||||
#endregion
|
||||
|
@@ -63,6 +63,11 @@ namespace SqlSugar
|
||||
context.SingleTableNameSubqueryShortName = (((meExp.Body as BinaryExpression).Right as MemberExpression).Expression as ParameterExpression).Name;
|
||||
}
|
||||
}
|
||||
else if (context.RootExpression!=null&&context.Expression.GetType().Name == "SimpleBinaryExpression")
|
||||
{
|
||||
var name = (this.context.RootExpression as LambdaExpression).Parameters[0].Name;
|
||||
context.SingleTableNameSubqueryShortName = name;
|
||||
}
|
||||
else
|
||||
{
|
||||
Check.Exception(true, "I'm sorry I can't parse the current expression");
|
||||
|
@@ -27,6 +27,7 @@ namespace SqlSugar
|
||||
Action<Type> InitMappingInfo { get; set; }
|
||||
Action RefreshMapping { get; set; }
|
||||
bool PgSqlIsAutoToLower { get; set; }
|
||||
Expression RootExpression { get; set; }
|
||||
|
||||
string GetAsString(string fieldName, string fieldValue);
|
||||
void Resolve(Expression expression, ResolveExpressType resolveType);
|
||||
|
Reference in New Issue
Block a user