This commit is contained in:
sunkaixuan
2017-09-15 19:12:35 +08:00
parent 99ee375619
commit 55bb54b82b
2 changed files with 41 additions and 15 deletions

View File

@@ -26,6 +26,7 @@ namespace OrmTest.UnitTest
single3();
single4();
single5();
single6();
Multiple();
Multiple2();
singleDynamic();
@@ -161,7 +162,22 @@ namespace OrmTest.UnitTest
@"( @constant0<>'' AND @constant0 IS NOT NULL )", new List<SugarParameter>() {
new SugarParameter("@constant0",p)
}, 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()

View File

@@ -104,11 +104,20 @@ namespace SqlSugar
{
string fieldName = string.Empty;
if (isSetTempData)
{
if (ExpressionTool.IsConstExpression(expression))
{
var value = ExpressionTool.GetMemberValue(expression.Member, expression);
base.AppendValue(parameter, isLeft, value);
}
else
{
fieldName = GetName(parameter, expression, null, isSingle);
baseParameter.CommonTempData = fieldName;
return;
}
}
else
{
if (ExpressionTool.IsConstExpression(expression))
{
var value = ExpressionTool.GetMemberValue(expression.Member, expression);
@@ -122,6 +131,7 @@ namespace SqlSugar
}
AppendMember(parameter, isLeft, fieldName);
}
}
#endregion
#region Resolve special member