Это может быть немного взломанным, но вы можете использовать свойство .DayOfWeek для int (это перечисление, и поскольку его базовый тип данных не изменился по умолчанию на int) и использовать его для определения предыдущего запуска недели.
Кажется, что неделя, указанная в перечислении DayOfWeek, начинается в воскресенье, поэтому, если мы вычтем 1 из этого значения, которое будет равно количеству дней в понедельник до текущей даты. Нам также нужно отобразить воскресенье (0) равным 7, так что 1 - 7 = -6, воскресенье будет отображено в предыдущий понедельник: -
DateTime now = DateTime.Now;
int dayOfWeek = (int)now.DayOfWeek;
dayOfWeek = dayOfWeek == 0 ? 7 : dayOfWeek;
DateTime startOfWeek = now.AddDays(1 - (int)now.DayOfWeek);
Код предыдущего воскресенья проще, чем нам не нужно выполнять эту настройку: -
DateTime now = DateTime.Now;
int dayOfWeek = (int)now.DayOfWeek;
DateTime startOfWeek = now.AddDays(-(int)now.DayOfWeek);