mirror of
https://gitee.com/dotnetchina/SqlSugar.git
synced 2025-08-01 10:10:16 +08:00
-
This commit is contained in:
parent
d0d17366a7
commit
9e6b211c2c
@ -120,7 +120,7 @@ namespace OrmTest.Demo
|
||||
var db = GetInstance();
|
||||
var getAll = db.Queryable<Student>().ToList();
|
||||
var getId = db.Queryable<Student>().Select(it => it.Id).ToList();
|
||||
// var getIdIIF= db.Queryable<Student>().Select(it =>new { id = SqlFunc.IIF(it.Id == 0, 1, it.Id) }).ToList();
|
||||
// var getIdIIF= db.Queryable<Student>().Select(it =>new { id = SqlFunc.IIF(it.Id == 0, 1, it.Id) }).ToList();
|
||||
var getAllNoLock = db.Queryable<Student>().With(SqlWith.NoLock).ToList();
|
||||
var getByPrimaryKey = db.Queryable<Student>().InSingle(2);
|
||||
var getSingleOrDefault = db.Queryable<Student>().Single();
|
||||
|
@ -180,6 +180,25 @@ namespace SqlSugar
|
||||
this.Context.Result.Append(" " + ExpressionConst.Format1 + parameter.BaseParameter.Index);
|
||||
}
|
||||
}
|
||||
|
||||
protected MethodCallExpressionArgs GetMethodCallArgs(ExpressionParameter parameter, Expression item)
|
||||
{
|
||||
var newContext = this.Context.GetCopyContext();
|
||||
newContext.Resolve(item, this.Context.ResolveType);
|
||||
this.Context.Index = newContext.Index;
|
||||
this.Context.ParameterIndex = newContext.ParameterIndex;
|
||||
if (newContext.Parameters.IsValuable())
|
||||
{
|
||||
this.Context.Parameters.AddRange(newContext.Parameters);
|
||||
}
|
||||
var methodCallExpressionArgs = new MethodCallExpressionArgs()
|
||||
{
|
||||
IsMember = true,
|
||||
MemberName = newContext.Result.GetResultString()
|
||||
};
|
||||
return methodCallExpressionArgs;
|
||||
}
|
||||
|
||||
protected void AppendNot(object Value)
|
||||
{
|
||||
this.Context.Result.Append("NOT");
|
||||
|
@ -42,7 +42,7 @@ namespace SqlSugar
|
||||
var isBinaryExpression = item is BinaryExpression || item is MethodCallExpression;
|
||||
if (isBinaryExpression)
|
||||
{
|
||||
Binary(parameter, model, item);
|
||||
model.Args.Add(GetMethodCallArgs(parameter, item));
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -58,7 +58,7 @@ namespace SqlSugar
|
||||
var isBinaryExpression = item is BinaryExpression||item is MethodCallExpression;
|
||||
if (isBinaryExpression)
|
||||
{
|
||||
Binary(parameter, model, item);
|
||||
model.Args.Add(GetMethodCallArgs(parameter, item));
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -68,23 +68,6 @@ namespace SqlSugar
|
||||
var methodValue = GetMdthodValue(name, model);
|
||||
base.AppendValue(parameter, isLeft, methodValue);
|
||||
}
|
||||
private void Binary(ExpressionParameter parameter, MethodCallExpressionModel model, Expression item)
|
||||
{
|
||||
var newContext = this.Context.GetCopyContext();
|
||||
newContext.Resolve(item, this.Context.ResolveType);
|
||||
this.Context.Index = newContext.Index ;
|
||||
this.Context.ParameterIndex = newContext.ParameterIndex ;
|
||||
if (newContext.Parameters.IsValuable())
|
||||
{
|
||||
this.Context.Parameters.AddRange(newContext.Parameters);
|
||||
}
|
||||
var methodCallExpressionArgs = new MethodCallExpressionArgs()
|
||||
{
|
||||
IsMember = true,
|
||||
MemberName = newContext.Result.GetResultString()
|
||||
};
|
||||
model.Args.Add(methodCallExpressionArgs);
|
||||
}
|
||||
private void Default(ExpressionParameter parameter, MethodCallExpressionModel model, Expression item)
|
||||
{
|
||||
parameter.CommonTempData = CommonTempDataType.Result;
|
||||
|
Loading…
Reference in New Issue
Block a user