Update Exp to sql

This commit is contained in:
sunkaixuan
2019-05-14 19:51:15 +08:00
parent 4eec972e48
commit 5765cc7806

View File

@@ -13,7 +13,11 @@ namespace SqlSugar
public NewExpressionResolve(ExpressionParameter parameter) : base(parameter)
{
var expression = base.Expression as NewExpression;
Check.Exception(expression.Type == UtilConstants.GuidType, "Not Support new Guid(), Use Guid.New()");
if (expression.Type.IsIn(UtilConstants.DateType,UtilConstants.GuidType))
{
NewValueType(parameter, expression);
return;
}
switch (parameter.Context.ResolveType)
{
case ResolveExpressType.WhereSingle:
@@ -71,6 +75,27 @@ namespace SqlSugar
}
}
private void NewValueType(ExpressionParameter parameter, NewExpression expression)
{
try
{
var value = ExpressionTool.DynamicInvoke(expression);
var isSetTempData = parameter.CommonTempData.HasValue() && parameter.CommonTempData.Equals(CommonTempDataType.Result);
if (isSetTempData)
{
parameter.CommonTempData = value;
}
else
{
AppendValue(parameter, parameter.IsLeft, value);
}
}
catch (Exception ex)
{
Check.Exception(expression.Type == UtilConstants.DateType, "ThrowNotSupportedException {0} ", ex.ToString());
}
}
private void Select(NewExpression expression, ExpressionParameter parameter, bool isSingle)
{
if (expression.Arguments != null)