อยากรู้ว่าในหนึ่งเดือนมีกี่สัปดาห์จะทำอย่างไร

 หากว่าเราต้องการหาว่า 

" เดือนนี้มีกี่สัปดาห์ และ แต่ละสัปดาห์เริ่มตั้งแต่ไหนถึงวันไหน เราสามารถทำได้ครับ "

    DateTime dt = new DateTime(2022,10,1);

    System.Globalization.Calendar mycal = CultureInfo.CurrentCulture.Calendar;

    IEnumerable<int> daysInMonth = Enumerable.Range(1, mycal.GetDaysInMonth(dt.Year, dt.Month));

    List<Tuple<DateTime, DateTime>> weeks = daysInMonth.Select(day => new DateTime(dt.Year, dt.Month, day))

                .GroupBy(d => mycal.GetWeekOfYear(d, CalendarWeekRule.FirstFourDayWeek, DayOfWeek.Sunday))

                .Select(g => new Tuple<DateTime, DateTime>(g.First(), g.Last()))

                .ToList();

    int i = 1;
   foreach (Tuple<DateTime, DateTime> w in weeks)
   {
          string week = "สัปดาหที่ " + i + "( " + String.Format("{0:dd/MM/yyyy} - {1:dd/MM/yyyy}", w.Item1, w.Item2) + ")";
         Console.WriteLine(week);
         i++;
   }


output