Exp to sql bug

This commit is contained in:
sunkaixuan
2019-01-18 17:37:27 +08:00
parent 698924d5eb
commit f6a9a80383
2 changed files with 10 additions and 1 deletions

View File

@@ -326,6 +326,7 @@ namespace OrmTest.Demo
var getAll2 = db.Queryable<Student>().ToList();
var getAll22 = db.Queryable<Student>().ToDataTable();
var getAll222 = db.Queryable<Student>().ToJson();
var getAll2222 = db.Queryable<Student>().OrderBy(it=>it.Name.Length).ToJson();
var getAll3 = db.Queryable<Student>().OrderBy(it => new { it.Id, it.Name }).GroupBy(it => new { it.Id, it.Name }).Select<object>("id").ToList();
var getRandomList = db.Queryable<Student>().OrderBy(it => SqlFunc.GetRandom()).ToList();
var getAllOrder = db.Queryable<Student>().OrderBy(it => it.Id).OrderBy(it => it.Name, OrderByType.Desc).ToList();

View File

@@ -218,7 +218,7 @@ namespace SqlSugar
if (this.Expression.Type == UtilConstants.DateType && this.Expression.ToString() == "DateTime.Now")
{
this.Expression = expression;
var parameterName=base.AppendParameter(ExpressionTool.GetMemberValue(expression.Member, expression));
var parameterName = base.AppendParameter(ExpressionTool.GetMemberValue(expression.Member, expression));
base.AppendMember(parameter, isLeft, parameterName);
}
else
@@ -254,6 +254,14 @@ namespace SqlSugar
private void ResolveLength(ExpressionParameter parameter, bool? isLeft, MemberExpression expression)
{
if (parameter.Context.ResolveType == ResolveExpressType.FieldSingle)
{
parameter.Context.ResolveType = ResolveExpressType.WhereSingle;
}
if (parameter.Context.ResolveType == ResolveExpressType.FieldMultiple)
{
parameter.Context.ResolveType = ResolveExpressType.WhereMultiple;
}
var oldCommonTempDate = parameter.CommonTempData;
parameter.CommonTempData = CommonTempDataType.Result;
this.Expression = expression.Expression;