mirror of
https://gitee.com/dotnetchina/SqlSugar.git
synced 2025-09-20 10:38:09 +08:00
-
This commit is contained in:
@@ -27,6 +27,8 @@ namespace OrmTest.UnitTest
|
|||||||
single4();
|
single4();
|
||||||
single5();
|
single5();
|
||||||
single6();
|
single6();
|
||||||
|
single7();
|
||||||
|
single8();
|
||||||
Multiple();
|
Multiple();
|
||||||
Multiple2();
|
Multiple2();
|
||||||
singleDynamic();
|
singleDynamic();
|
||||||
@@ -35,6 +37,44 @@ namespace OrmTest.UnitTest
|
|||||||
base.End("Select Test");
|
base.End("Select Test");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void single7()
|
||||||
|
{
|
||||||
|
Expression<Func<DataTestInfo2, DataTestInfo2>> exp =it => new DataTestInfo2() { Bool1=it.Bool1 , Bool2=it.Bool2 };
|
||||||
|
ExpressionContext expContext = new ExpressionContext();
|
||||||
|
expContext.IsSingle = false;
|
||||||
|
expContext.Resolve(exp, ResolveExpressType.SelectSingle);
|
||||||
|
var selectorValue = expContext.Result.GetString();
|
||||||
|
var pars = expContext.Parameters;
|
||||||
|
base.Check(
|
||||||
|
selectorValue,
|
||||||
|
pars,
|
||||||
|
@"[Bool1] AS [Bool1] , [Bool2] AS [Bool2] ",
|
||||||
|
new List<SugarParameter>()
|
||||||
|
{
|
||||||
|
|
||||||
|
},
|
||||||
|
"Select.single7 Error");
|
||||||
|
}
|
||||||
|
|
||||||
|
private void single8()
|
||||||
|
{
|
||||||
|
Expression<Func<DataTestInfo2, object>> exp = it => new { Bool1 = it.Bool1, Bool2 = it.Bool2 };
|
||||||
|
ExpressionContext expContext = new ExpressionContext();
|
||||||
|
expContext.IsSingle = false;
|
||||||
|
expContext.Resolve(exp, ResolveExpressType.SelectSingle);
|
||||||
|
var selectorValue = expContext.Result.GetString();
|
||||||
|
var pars = expContext.Parameters;
|
||||||
|
base.Check(
|
||||||
|
selectorValue,
|
||||||
|
pars,
|
||||||
|
@"[Bool1] AS [Bool1] , [Bool2] AS [Bool2] ",
|
||||||
|
new List<SugarParameter>()
|
||||||
|
{
|
||||||
|
|
||||||
|
},
|
||||||
|
"Select.single8 Error");
|
||||||
|
}
|
||||||
|
|
||||||
private void Multiple()
|
private void Multiple()
|
||||||
{
|
{
|
||||||
Expression<Func<Student, School, object>> exp = (it, school) => new Student() { Name = "a", Id = it.Id, SchoolId = school.Id, TestId = it.Id + 1 };
|
Expression<Func<Student, School, object>> exp = (it, school) => new Student() { Name = "a", Id = it.Id, SchoolId = school.Id, TestId = it.Id + 1 };
|
||||||
|
@@ -27,7 +27,7 @@ namespace SqlSugar
|
|||||||
var isDateDate = memberName == "Date" && expression.Expression.Type == UtilConstants.DateType;
|
var isDateDate = memberName == "Date" && expression.Expression.Type == UtilConstants.DateType;
|
||||||
var isMemberValue = expression.Expression != null && expression.Expression.NodeType != ExpressionType.Parameter && !isValueBool;
|
var isMemberValue = expression.Expression != null && expression.Expression.NodeType != ExpressionType.Parameter && !isValueBool;
|
||||||
var isSingle = parameter.Context.ResolveType == ResolveExpressType.WhereSingle;
|
var isSingle = parameter.Context.ResolveType == ResolveExpressType.WhereSingle;
|
||||||
var fieldIsBool = isBool && isLogicOperator;
|
var fieldIsBool = isBool && isLogicOperator&&(parameter.BaseParameter==null||!(parameter.BaseParameter.CurrentExpression is MemberInitExpression|| parameter.BaseParameter.CurrentExpression is NewExpression));
|
||||||
baseParameter.ChildExpression = expression;
|
baseParameter.ChildExpression = expression;
|
||||||
if (isLength)
|
if (isLength)
|
||||||
{
|
{
|
||||||
|
Reference in New Issue
Block a user