mirror of
https://gitee.com/dotnetchina/SqlSugar.git
synced 2025-08-23 22:11:36 +08:00
Update exp to sql
This commit is contained in:
parent
206ce8a593
commit
b00b651d7f
@ -202,11 +202,17 @@ namespace OrmTest
|
|||||||
var listEnum=db.Queryable<UnitEnumadfa>().ToList();
|
var listEnum=db.Queryable<UnitEnumadfa>().ToList();
|
||||||
|
|
||||||
var d111111 = db.Queryable<Order>()
|
var d111111 = db.Queryable<Order>()
|
||||||
.Where(it => it.Id== SqlFunc.IF(true).Return(1).End(0) )
|
.Where(it => it.Id== SqlFunc.IF(true).Return(1).End(0) )
|
||||||
.ToList();
|
.ToList();
|
||||||
var d1111111 = db.Queryable<Order>()
|
var d1111111 = db.Queryable<Order>()
|
||||||
.Where(it => it.Id == SqlFunc.IF(it.Id>0).Return(1).End(0))
|
.Where(it => it.Id == SqlFunc.IF(it.Id>0).Return(1).End(0))
|
||||||
.ToList();
|
.ToList();
|
||||||
|
var d11111111 = db.Queryable<Order>()
|
||||||
|
.Where(it => it.Id == (it.Id>0? (it.Id==1?11:1):2))
|
||||||
|
.ToList();
|
||||||
|
var d111111111 = db.Queryable<Order>()
|
||||||
|
.Where(it => it.Id == (it.Id > 0 ? (it.Id == 1 ? 11 : (it.Id==2?2:1)) : 2))
|
||||||
|
.ToList();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -422,6 +422,7 @@ namespace SqlSugar
|
|||||||
var isBinaryExpression = item is BinaryExpression || item is MethodCallExpression;
|
var isBinaryExpression = item is BinaryExpression || item is MethodCallExpression;
|
||||||
var isConst = item is ConstantExpression;
|
var isConst = item is ConstantExpression;
|
||||||
var isIIF = name == "IIF";
|
var isIIF = name == "IIF";
|
||||||
|
var isSubIIF= (isIIF && item.ToString().StartsWith("IIF")) ;
|
||||||
var isIFFBoolMember = isIIF && (item is MemberExpression) && (item as MemberExpression).Type == UtilConstants.BoolType;
|
var isIFFBoolMember = isIIF && (item is MemberExpression) && (item as MemberExpression).Type == UtilConstants.BoolType;
|
||||||
var isIFFUnary = isIIF && (item is UnaryExpression) && (item as UnaryExpression).Operand.Type == UtilConstants.BoolType;
|
var isIFFUnary = isIIF && (item is UnaryExpression) && (item as UnaryExpression).Operand.Type == UtilConstants.BoolType;
|
||||||
var isIFFBoolBinary = isIIF && (item is BinaryExpression) && (item as BinaryExpression).Type == UtilConstants.BoolType;
|
var isIFFBoolBinary = isIIF && (item is BinaryExpression) && (item as BinaryExpression).Type == UtilConstants.BoolType;
|
||||||
@ -460,6 +461,10 @@ namespace SqlSugar
|
|||||||
{
|
{
|
||||||
model.Args.Add(GetMethodCallArgs(parameter, item));
|
model.Args.Add(GetMethodCallArgs(parameter, item));
|
||||||
}
|
}
|
||||||
|
else if (isSubIIF)
|
||||||
|
{
|
||||||
|
model.Args.Add(GetMethodCallArgs(parameter, item));
|
||||||
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
AppendModel(parameter, model, item);
|
AppendModel(parameter, model, item);
|
||||||
|
Loading…
Reference in New Issue
Block a user