mirror of
https://gitee.com/dotnetchina/SqlSugar.git
synced 2025-08-23 13:06:50 +08:00
Update exp to sql
This commit is contained in:
parent
de0f4fa0ce
commit
83fc19f63b
@ -38,9 +38,9 @@ namespace OrmTest
|
||||
Ado();
|
||||
Queryable();
|
||||
QueryableAsync();
|
||||
Thread();
|
||||
Thread2();
|
||||
Thread3();
|
||||
//Thread();
|
||||
//Thread2();
|
||||
//Thread3();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -84,6 +84,17 @@ namespace OrmTest
|
||||
var list8=Db.Queryable<Order>().Where(it => SqlFunc.ContainsArrayUseSqlParameters(ids, it.Id)).ToList();
|
||||
|
||||
var result2 = Db.Queryable<Unit_SYS_USER>().Where(o => o.XH == UserLoginInfo.XH).Select(o => o.XH).ToSql();
|
||||
|
||||
var x = Db.Queryable<BoolTest1>().Select(it => new BoolTest2()
|
||||
{
|
||||
a =it.a
|
||||
}).ToSql();
|
||||
UValidate.Check(x.Key, "SELECT [a] AS [a] FROM [BoolTest1] ", "Queryable");
|
||||
x = Db.Queryable<BoolTest2>().Select(it => new BoolTest1()
|
||||
{
|
||||
a = it.a.Value
|
||||
}).ToSql();
|
||||
UValidate.Check(x.Key, "SELECT [a] AS [a] FROM [BoolTest2] ", "Queryable");
|
||||
}
|
||||
|
||||
|
||||
@ -360,4 +371,18 @@ namespace OrmTest
|
||||
public Guid? Id { get; set; }
|
||||
}
|
||||
}
|
||||
|
||||
internal class BoolTest1
|
||||
{
|
||||
public BoolTest1()
|
||||
{
|
||||
}
|
||||
|
||||
public bool a { get; set; }
|
||||
}
|
||||
|
||||
public class BoolTest2
|
||||
{
|
||||
public bool? a { get; set; }
|
||||
}
|
||||
}
|
||||
|
@ -343,6 +343,10 @@ namespace SqlSugar
|
||||
this.Context.Result.IsLockCurrentParameter = true;
|
||||
parameter.IsAppendTempDate();
|
||||
this.Expression = item;
|
||||
if (IsBoolValue(item))
|
||||
{
|
||||
this.Expression = (item as MemberExpression).Expression;
|
||||
}
|
||||
this.Start();
|
||||
parameter.IsAppendResult();
|
||||
this.Context.Result.Append(this.Context.GetAsString(asName, parameter.CommonTempData.ObjToString()));
|
||||
@ -491,6 +495,16 @@ namespace SqlSugar
|
||||
Check.ThrowNotSupportedException(item.GetType().Name);
|
||||
}
|
||||
}
|
||||
|
||||
private static bool IsBoolValue(Expression item)
|
||||
{
|
||||
return item.Type == UtilConstants.BoolType &&
|
||||
(item is MemberExpression) &&
|
||||
(item as MemberExpression).Expression != null &&
|
||||
(item as MemberExpression).Expression.Type == typeof(bool?) &&
|
||||
(item as MemberExpression).Member.Name == "Value";
|
||||
}
|
||||
|
||||
protected static bool IsConvert(Expression item)
|
||||
{
|
||||
return item is UnaryExpression && item.NodeType == ExpressionType.Convert;
|
||||
|
Loading…
Reference in New Issue
Block a user