public static void Main()
var hoy = new DateTime(2023, 12, 04);
Console.WriteLine(GetWeeklyDateTimeToFilter(hoy, -10).ToString("dd/MM/yyyy"));
Console.WriteLine("\n**********\n");
private static DateTime GetWeeklyDateTimeToFilter(DateTime currentDate, int daysToMove)
var daysInIteration = daysToMove > 0 ? 1 : -1;
currentDate = currentDate.AddDays(daysInIteration);
if (!IsWeekend(currentDate))
daysToMove -= daysInIteration;
private static bool IsWeekend(DateTime date)
return date.DayOfWeek == DayOfWeek.Saturday || date.DayOfWeek == DayOfWeek.Sunday;