mirror of
https://gitee.com/dotnetchina/SqlSugar.git
synced 2025-09-19 01:58:13 +08:00
-
This commit is contained in:
@@ -26,6 +26,7 @@ namespace OrmTest.UnitTest
|
|||||||
single3();
|
single3();
|
||||||
single4();
|
single4();
|
||||||
single5();
|
single5();
|
||||||
|
single6();
|
||||||
Multiple();
|
Multiple();
|
||||||
Multiple2();
|
Multiple2();
|
||||||
singleDynamic();
|
singleDynamic();
|
||||||
@@ -161,7 +162,22 @@ namespace OrmTest.UnitTest
|
|||||||
@"( @constant0<>'' AND @constant0 IS NOT NULL )", new List<SugarParameter>() {
|
@"( @constant0<>'' AND @constant0 IS NOT NULL )", new List<SugarParameter>() {
|
||||||
new SugarParameter("@constant0",p)
|
new SugarParameter("@constant0",p)
|
||||||
}, selectorValue, pars,
|
}, selectorValue, pars,
|
||||||
"Select.single4 Error");
|
"Select.single5 Error");
|
||||||
|
}
|
||||||
|
private void single6()
|
||||||
|
{
|
||||||
|
var p = (DateTime?)DateTime.Now;
|
||||||
|
Expression<Func<Student, object>> exp = it => p.Value;
|
||||||
|
SqlServerExpressionContext expContext = new SqlServerExpressionContext();
|
||||||
|
expContext.IsSingle = false;
|
||||||
|
expContext.Resolve(exp, ResolveExpressType.FieldSingle);
|
||||||
|
var selectorValue = expContext.Result.GetString();
|
||||||
|
var pars = expContext.Parameters;
|
||||||
|
base.Check(
|
||||||
|
@" @Const0 ", new List<SugarParameter>() {
|
||||||
|
new SugarParameter("@Const0",p)
|
||||||
|
}, selectorValue, pars,
|
||||||
|
"Select.single6 Error");
|
||||||
}
|
}
|
||||||
|
|
||||||
private void singleDynamic()
|
private void singleDynamic()
|
||||||
|
@@ -42,7 +42,7 @@ namespace SqlSugar
|
|||||||
}
|
}
|
||||||
else if (isValueBool)
|
else if (isValueBool)
|
||||||
{
|
{
|
||||||
ResolveValueBool(parameter, baseParameter, expression,isLeft, isSingle);
|
ResolveValueBool(parameter, baseParameter, expression, isLeft, isSingle);
|
||||||
}
|
}
|
||||||
else if (isValue)
|
else if (isValue)
|
||||||
{
|
{
|
||||||
@@ -105,22 +105,32 @@ namespace SqlSugar
|
|||||||
string fieldName = string.Empty;
|
string fieldName = string.Empty;
|
||||||
if (isSetTempData)
|
if (isSetTempData)
|
||||||
{
|
{
|
||||||
fieldName = GetName(parameter, expression, null, isSingle);
|
if (ExpressionTool.IsConstExpression(expression))
|
||||||
baseParameter.CommonTempData = fieldName;
|
{
|
||||||
return;
|
var value = ExpressionTool.GetMemberValue(expression.Member, expression);
|
||||||
|
base.AppendValue(parameter, isLeft, value);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
fieldName = GetName(parameter, expression, null, isSingle);
|
||||||
|
baseParameter.CommonTempData = fieldName;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
if (ExpressionTool.IsConstExpression(expression))
|
else
|
||||||
{
|
{
|
||||||
var value = ExpressionTool.GetMemberValue(expression.Member, expression);
|
if (ExpressionTool.IsConstExpression(expression))
|
||||||
base.AppendValue(parameter, isLeft, value);
|
{
|
||||||
return;
|
var value = ExpressionTool.GetMemberValue(expression.Member, expression);
|
||||||
|
base.AppendValue(parameter, isLeft, value);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
fieldName = GetName(parameter, expression, isLeft, isSingle);
|
||||||
|
if (expression.Type == UtilConstants.BoolType && baseParameter.OperatorValue.IsNullOrEmpty())
|
||||||
|
{
|
||||||
|
fieldName = "( " + fieldName + "=1 )";
|
||||||
|
}
|
||||||
|
AppendMember(parameter, isLeft, fieldName);
|
||||||
}
|
}
|
||||||
fieldName = GetName(parameter, expression, isLeft, isSingle);
|
|
||||||
if (expression.Type == UtilConstants.BoolType && baseParameter.OperatorValue.IsNullOrEmpty())
|
|
||||||
{
|
|
||||||
fieldName = "( " + fieldName + "=1 )";
|
|
||||||
}
|
|
||||||
AppendMember(parameter, isLeft, fieldName);
|
|
||||||
}
|
}
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user