mirror of
https://github.com/nsnail/FreeSql.git
synced 2025-04-22 18:52:50 +08:00
- 优化 WhereDynamicFilter DateRange 情况;
This commit is contained in:
parent
5deb3b56d9
commit
7a5f1cf4b8
@ -1012,7 +1012,7 @@ namespace FreeSql.Internal.CommonProvider
|
|||||||
else if (Regex.IsMatch(fiValueDateRangeArray[1], @"^\d\d\d\d$")) fiValueDateRangeArray[1] = DateTime.Parse($"{fiValueDateRangeArray[1]}-01-01").AddYears(1).ToString("yyyy-MM-dd HH:mm:ss");
|
else if (Regex.IsMatch(fiValueDateRangeArray[1], @"^\d\d\d\d$")) fiValueDateRangeArray[1] = DateTime.Parse($"{fiValueDateRangeArray[1]}-01-01").AddYears(1).ToString("yyyy-MM-dd HH:mm:ss");
|
||||||
else if (Regex.IsMatch(fiValueDateRangeArray[1], @"^\d\d\d\d[\-/]\d\d?[\-/]\d\d? \d\d?$")) fiValueDateRangeArray[1] = DateTime.Parse($"{fiValueDateRangeArray[1]}:00:00").AddHours(1).ToString("yyyy-MM-dd HH:mm:ss");
|
else if (Regex.IsMatch(fiValueDateRangeArray[1], @"^\d\d\d\d[\-/]\d\d?[\-/]\d\d? \d\d?$")) fiValueDateRangeArray[1] = DateTime.Parse($"{fiValueDateRangeArray[1]}:00:00").AddHours(1).ToString("yyyy-MM-dd HH:mm:ss");
|
||||||
else if (Regex.IsMatch(fiValueDateRangeArray[1], @"^\d\d\d\d[\-/]\d\d?[\-/]\d\d? \d\d?:\d\d?$")) fiValueDateRangeArray[1] = DateTime.Parse($"{fiValueDateRangeArray[1]}:00").AddMinutes(1).ToString("yyyy-MM-dd HH:mm:ss");
|
else if (Regex.IsMatch(fiValueDateRangeArray[1], @"^\d\d\d\d[\-/]\d\d?[\-/]\d\d? \d\d?:\d\d?$")) fiValueDateRangeArray[1] = DateTime.Parse($"{fiValueDateRangeArray[1]}:00").AddMinutes(1).ToString("yyyy-MM-dd HH:mm:ss");
|
||||||
else throw new ArgumentException(CoreStrings.DateRange_DateFormat_yyyy);
|
else if (!Regex.IsMatch(fiValueDateRangeArray[1], @"^\d\d\d\d[\-/]\d\d?[\-/]\d\d? \d\d?:\d\d?:\d\d?$")) throw new ArgumentException(CoreStrings.DateRange_DateFormat_yyyy);
|
||||||
|
|
||||||
if (Regex.IsMatch(fiValueDateRangeArray[0], @"^\d\d\d\d[\-/]\d\d?$")) fiValueDateRangeArray[0] = DateTime.Parse($"{fiValueDateRangeArray[0]}-01").ToString("yyyy-MM-dd HH:mm:ss");
|
if (Regex.IsMatch(fiValueDateRangeArray[0], @"^\d\d\d\d[\-/]\d\d?$")) fiValueDateRangeArray[0] = DateTime.Parse($"{fiValueDateRangeArray[0]}-01").ToString("yyyy-MM-dd HH:mm:ss");
|
||||||
else if (Regex.IsMatch(fiValueDateRangeArray[0], @"^\d\d\d\d$")) fiValueDateRangeArray[0] = DateTime.Parse($"{fiValueDateRangeArray[0]}-01-01").ToString("yyyy-MM-dd HH:mm:ss");
|
else if (Regex.IsMatch(fiValueDateRangeArray[0], @"^\d\d\d\d$")) fiValueDateRangeArray[0] = DateTime.Parse($"{fiValueDateRangeArray[0]}-01-01").ToString("yyyy-MM-dd HH:mm:ss");
|
||||||
@ -1040,7 +1040,12 @@ namespace FreeSql.Internal.CommonProvider
|
|||||||
{
|
{
|
||||||
var fiValueList = new List<string>();
|
var fiValueList = new List<string>();
|
||||||
foreach (var fiValueIeItem in fiValueIe)
|
foreach (var fiValueIeItem in fiValueIe)
|
||||||
|
{
|
||||||
|
if (fiValueIeItem is DateTime fiValueIeItemDateTime)
|
||||||
|
fiValueList.Add(fiValueIeItemDateTime.ToString("yyyy-MM-dd HH:mm:ss"));
|
||||||
|
else
|
||||||
fiValueList.Add(string.Concat(fiValueIeItem));
|
fiValueList.Add(string.Concat(fiValueIeItem));
|
||||||
|
}
|
||||||
return fiValueList.ToArray();
|
return fiValueList.ToArray();
|
||||||
}
|
}
|
||||||
var fiValueType = fi.Value.GetType();
|
var fiValueType = fi.Value.GetType();
|
||||||
@ -1052,7 +1057,12 @@ namespace FreeSql.Internal.CommonProvider
|
|||||||
fiValueIe = fiValueType.GetMethod("EnumerateArray", new Type[0])?.Invoke(fi.Value, null) as IEnumerable;
|
fiValueIe = fiValueType.GetMethod("EnumerateArray", new Type[0])?.Invoke(fi.Value, null) as IEnumerable;
|
||||||
var fiValueList = new List<string>();
|
var fiValueList = new List<string>();
|
||||||
foreach (var fiValueIeItem in fiValueIe)
|
foreach (var fiValueIeItem in fiValueIe)
|
||||||
|
{
|
||||||
|
if (fiValueIeItem is DateTime fiValueIeItemDateTime)
|
||||||
|
fiValueList.Add(fiValueIeItemDateTime.ToString("yyyy-MM-dd HH:mm:ss"));
|
||||||
|
else
|
||||||
fiValueList.Add(string.Concat(fiValueIeItem));
|
fiValueList.Add(string.Concat(fiValueIeItem));
|
||||||
|
}
|
||||||
return fiValueList.ToArray();
|
return fiValueList.ToArray();
|
||||||
}
|
}
|
||||||
return fi.Value.ToString().Split(',');
|
return fi.Value.ToString().Split(',');
|
||||||
|
Loading…
x
Reference in New Issue
Block a user