public static DateTime Truncate(this DateTime dateTime, TimeSpan timeSpan) { if (timeSpan == TimeSpan.Zero) { return dateTime; } return dateTime.AddTicks(-(dateTime.Ticks % timeSpan.Ticks)); }