diff --git a/Examples/base_entity/Program.cs b/Examples/base_entity/Program.cs index 127586bd..4ce60e3a 100644 --- a/Examples/base_entity/Program.cs +++ b/Examples/base_entity/Program.cs @@ -175,6 +175,16 @@ namespace base_entity ""Operator"" : ""eq"", ""Value"" : ""product-4"" }, + { + ""Field"" : ""testint"", + ""Operator"" : ""Range"", + ""Value"" : [100,200] + }, + { + ""Field"" : ""testint"", + ""Operator"" : ""Range"", + ""Value"" : [""101"",""202""] + }, ] } "); @@ -228,6 +238,16 @@ namespace base_entity ""Field"" : ""testint"", ""Operator"" : 8, ""Value"" : ""12"" + }, + { + ""Field"" : ""testint"", + ""Operator"" : ""Range"", + ""Value"" : [100,200] + }, + { + ""Field"" : ""testint"", + ""Operator"" : ""Range"", + ""Value"" : [""101"",""202""] } ] } @@ -235,7 +255,6 @@ namespace base_entity Products.Select.WhereDynamicFilter(wdy1).ToList(); Products.Select.WhereDynamicFilter(wdy2).ToList(); - var items1 = Products.Select.Limit(10).OrderByDescending(a => a.CreateTime).ToList(); var items2 = fsql.Select().Limit(10).OrderByDescending(a => a.CreateTime).ToList(); diff --git a/FreeSql.DbContext/FreeSql.DbContext.xml b/FreeSql.DbContext/FreeSql.DbContext.xml index 9c6cd88b..5a0c8bd0 100644 --- a/FreeSql.DbContext/FreeSql.DbContext.xml +++ b/FreeSql.DbContext/FreeSql.DbContext.xml @@ -130,13 +130,6 @@ 清空状态数据 - - - 根据 lambda 条件删除数据 - - - - 添加 diff --git a/FreeSql/Internal/CommonProvider/SelectProvider/Select0Provider.cs b/FreeSql/Internal/CommonProvider/SelectProvider/Select0Provider.cs index 89c341d5..89ea4ce5 100644 --- a/FreeSql/Internal/CommonProvider/SelectProvider/Select0Provider.cs +++ b/FreeSql/Internal/CommonProvider/SelectProvider/Select0Provider.cs @@ -551,6 +551,20 @@ namespace FreeSql.Internal.CommonProvider fiValueList.Add(string.Concat(fiValueIeItem)); return fiValueList.ToArray(); } + var fiValueType = fi.Value.GetType(); + if (fiValueType.FullName == "System.Text.Json.JsonElement") + { + var fiValueKind = fiValueType.GetProperty("ValueKind").GetValue(fi.Value, null).ToString(); + if (fiValueKind == "Array") + { + fiValueIe = fiValueType.GetMethod("EnumerateArray", new Type[0])?.Invoke(fi.Value, null) as IEnumerable; + var fiValueList = new List(); + foreach (var fiValueIeItem in fiValueIe) + fiValueList.Add(string.Concat(fiValueIeItem)); + return fiValueList.ToArray(); + } + return fi.Value.ToString().Split(','); + } return new string[0]; }