private static DateTime? ResolveDefaultDateTime(DefaultDateValues defaultDateValue, DefaultTimeValues defaultTimeValue) { DateTime returnedValue; DateTime now = LocalizationUtility.ConvertUtcTimeToClientTime(DateTime.UtcNow); switch (defaultDateValue) { case DefaultDateValues.FirstDayOfMonth: returnedValue = new DateTime(now.Year, now.Month, 1); break; case DefaultDateValues.FirstDayOfWeek: int dayOfWeek = (int)now.DayOfWeek; if (dayOfWeek == 0) return now.AddDays(-6d); returnedValue = now.AddDays(dayOfWeek - 1); break; case DefaultDateValues.FirstDayOfYeay: returnedValue = new DateTime(now.Year, 1, 1); break; case DefaultDateValues.Today: returnedValue = now; break; default: return (DateTime?)null; } switch (defaultTimeValue) { case DefaultTimeValues.None: return returnedValue; case DefaultTimeValues.Now: return returnedValue.Add(new TimeSpan(0, now.Hour, now.Minute, now.Second, now.Millisecond)); default: string s = defaultTimeValue.ToString().Substring(1); int hourNumber; if (int.TryParse(s, out hourNumber)) returnedValue = returnedValue.AddHours(hourNumber); return returnedValue; } }
private static DateTime? ResolveDefaultDateTime(DefaultDateValues defaultDateValue) { DateTime now = LocalizationUtility.ConvertUtcTimeToClientTime(DateTime.UtcNow); switch (defaultDateValue) { case DefaultDateValues.FirstDayOfMonth: return new DateTime(now.Year, now.Month, 1); case DefaultDateValues.FirstDayOfWeek: int dayOfWeek = (int)now.DayOfWeek; if (dayOfWeek == 0) return now.AddDays(-6d); return now.AddDays(dayOfWeek - 1); case DefaultDateValues.FirstDayOfYeay: return new DateTime(now.Year, 1, 1); case DefaultDateValues.Today: return now; default: return (DateTime?)null; } }