public static DateTime SundayDate( this DateTime dt, DayOfWeek startOfWeek = DayOfWeek.Monday ) { if ( dt.DayOfWeek == DayOfWeek.Sunday ) { return dt.Date; } else { int intDayofWeek = (int)dt.DayOfWeek; int diff = 7 - (int)dt.DayOfWeek; return dt.AddDays( diff ).Date; } }