如何在c#中的2个日期之间给出"日名"的所有日期

san*_*eep -1 .net c# asp.net datetime

如何在给定的两个日期之间获得所有日期,给出"日名"?
例如:Start_Date = 2011年1月1日
      End_Date = 2011年1月20日
      日名 = 星期日

在这里,我们需要将所有日期的日期命名为"SUNDAY"
Ex:

Jan 02, 2011
Jan 09, 2011
Jan 16, 2011
Run Code Online (Sandbox Code Playgroud)

Fre*_*örk 11

我喜欢Enumerable.Range用于这样的任务:

DateTime start = new DateTime(2011,1,1);
DateTime end = new DateTime(2011,1,20);

var datesThatAreSundays = Enumerable
    .Range(start.DayOfYear, end.Subtract(start).Days + 1)
    .Select(n => start.AddDays(n - start.DayOfYear))
    .Where(d => d.DayOfWeek == DayOfWeek.Sunday);
Run Code Online (Sandbox Code Playgroud)