2016-02-26 89 views
0

我想,我想在日期範圍內的任何想法如何做到這一點的具體日子,如何獲取特定日期的日期範圍

如何獲得「星期六」從列表範圍:在下面的代碼

var startDate = dtpInsetDate.Value.ToDate(); 
       var endDate = dtpEndDate.Value.ToDate(); 
       int days = (endDate - startDate).Days + 1; // incl. endDate 
       string day = endDate.Day.ToString(); 
       List<DateTime> range = Enumerable.Range(0, days) 
       .Select(i => startDate.AddDays(i)) 
       .ToList(); 
       if (day.StartsWith("Sat") == true) 
       { 

       } 
+0

你的問題到底是什麼?你的代碼不工作?它拋出異常或錯誤?意外的結果? ToStr和ToDate是做什麼的?請更具體一些。 –

+0

我想得到一天範圍變量,就像只有星期六 –

+0

如何從列表中獲得「星期六」範圍 –

回答

0

如果你想在你的範圍內的第一個星期六,你可以使用它。

var saturday = range.FirstOrDefault(dt => dt.DayOfWeek == DayOfWeek.Saturday); 

或者這個,如果你想在你的範圍內的所有星期六:

var saturday = range.Where(dt => dt.DayOfWeek == DayOfWeek.Saturday); 
+0

感謝他們的偉大工作:) –

+0

變量'saturday'是'DateTime'。如果您想查看當天的名稱,請使用:'saturday.DayOfWeek.ToString()'。 –

+0

不客氣:) –

0

使用DAYOFWEEK財產的DateTime對象。

 var dayList = new List<DateTime>(); 

     foreach(var day in dayList) 
     { 
      if (day.DayOfWeek == DayOfWeek.Sunday) //Sunday 
      if (day.DayOfWeek == DayOfWeek.Monday) //Monday 
      etc... 
     } 

或LINQ

 dayList.Where(x => x.DayOfWeek == DayOfWeek.Sunday).ToList(); 
0

如何獲得 「星期六」 從列表區域

基於您的評論;

DateTime saturday = range.Where(d => d.DayOfWeek == DayOfWeek.Saturday).FirstOrDefault(); 

我假定你的射程只有一個週六,這將返回它。