mirror of
https://gitee.com/dotnetchina/SqlSugar.git
synced 2025-09-20 02:29:39 +08:00
Update core
This commit is contained in:
@@ -13,6 +13,21 @@ namespace SqlSugar
|
|||||||
var expression = base.Expression as ConstantExpression;
|
var expression = base.Expression as ConstantExpression;
|
||||||
var isLeft = parameter.IsLeft;
|
var isLeft = parameter.IsLeft;
|
||||||
object value = ExpressionTool.GetValue(expression.Value,this.Context);
|
object value = ExpressionTool.GetValue(expression.Value,this.Context);
|
||||||
|
if (this.Context.TableEnumIsString == true
|
||||||
|
&& value != null
|
||||||
|
&& value.IsInt()
|
||||||
|
&& base.BaseParameter?.OppsiteExpression != null)
|
||||||
|
{
|
||||||
|
if (base.BaseParameter?.OppsiteExpression is UnaryExpression)
|
||||||
|
{
|
||||||
|
var oppsiteExpression = base.BaseParameter?.OppsiteExpression as UnaryExpression;
|
||||||
|
var oppsiteValue = oppsiteExpression.Operand;
|
||||||
|
if (oppsiteValue.Type.IsEnum())
|
||||||
|
{
|
||||||
|
value = UtilMethods.ChangeType2(value, oppsiteValue.Type).ToString();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
var baseParameter = parameter.BaseParameter;
|
var baseParameter = parameter.BaseParameter;
|
||||||
baseParameter.ChildExpression = expression;
|
baseParameter.ChildExpression = expression;
|
||||||
var isSetTempData = baseParameter.CommonTempData.HasValue() && baseParameter.CommonTempData.Equals(CommonTempDataType.Result);
|
var isSetTempData = baseParameter.CommonTempData.HasValue() && baseParameter.CommonTempData.Equals(CommonTempDataType.Result);
|
||||||
|
@@ -678,6 +678,24 @@ namespace SqlSugar
|
|||||||
model.Args[0].MemberValue = first.Value;
|
model.Args[0].MemberValue = first.Value;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if (this.Context.TableEnumIsString == true)
|
||||||
|
{
|
||||||
|
List<string> enumStringList = new List<string>();
|
||||||
|
foreach (var inItem in (model.Args[0].MemberValue as IEnumerable))
|
||||||
|
{
|
||||||
|
if (inItem != null)
|
||||||
|
{
|
||||||
|
if (UtilMethods.GetUnderType(inItem.GetType()).IsEnum())
|
||||||
|
{
|
||||||
|
enumStringList.Add(inItem.ToString());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (enumStringList.Any())
|
||||||
|
{
|
||||||
|
model.Args[0].MemberValue = enumStringList;
|
||||||
|
}
|
||||||
|
}
|
||||||
var caResult = this.Context.DbMehtods.ContainsArray(model);
|
var caResult = this.Context.DbMehtods.ContainsArray(model);
|
||||||
this.Context.Parameters.RemoveAll(it => it.ParameterName == model.Args[0].MemberName.ObjToString());
|
this.Context.Parameters.RemoveAll(it => it.ParameterName == model.Args[0].MemberName.ObjToString());
|
||||||
return caResult;
|
return caResult;
|
||||||
|
Reference in New Issue
Block a user