private static void AddIntervalSearch(ref SearchCondition condition, string queryField, string[] intervals) { foreach (string interval in intervals) { DateTime?t0 = null; DateTime?t1 = null; if (SystemEnumInterval.YearBefore.ToString() == interval) { t1 = DateTime.Now.Date.AddDays(1).AddYears(-1); condition.Add(queryField, Formula.QueryMethod.LessThan, (DateTime)t1); } else if (SystemEnumInterval.Year.ToString() == interval) { t1 = DateTime.Now.Date.AddDays(1); t0 = ((DateTime)t1).AddYears(-1); } else if (SystemEnumInterval.HalfYear.ToString() == interval) { t1 = DateTime.Now.Date.AddDays(1); t0 = ((DateTime)t1).AddMonths(-6); } else if (SystemEnumInterval.Month.ToString() == interval) { t1 = DateTime.Now.Date.AddDays(1); t0 = ((DateTime)t1).AddMonths(-1); } else if (SystemEnumInterval.Week.ToString() == interval) { t1 = DateTime.Now.Date.AddDays(1); t0 = ((DateTime)t1).AddDays(-7); } if (t0 != null && t1 != null) { condition.AddBetweenCondition(queryField, (DateTime)t0, (DateTime)t1); } else { if (t0 != null) { condition.Add(queryField, Formula.QueryMethod.GreaterThanOrEqual, (DateTime)t0); } else if (t1 != null) { condition.Add(queryField, Formula.QueryMethod.LessThan, (DateTime)t1); } } } }