Visual C#,两个日期之间的日期数组

时间:2018-05-02 02:09:20

标签: c# arrays date for-loop datetimepicker

我有两个名为DateTimePickerdtp1的{​​{1}}个控件。我希望在这两天之间得到一系列日期: dtp1.Date.Value< = x< = dtp2.Date.Value

我目前使用dtp2循环来完成这样的任务,但这不是一种非常有效的方法:

for

有没有更好,更简洁的方法来达到同样的效果?

1 个答案:

答案 0 :(得分:3)

我建议你使用列表代替数组,你可以使用Enumarable.Range

var startDate = new DateTime(2013, 1, 25);
var endDate = new DateTime(2013, 1, 31);
int days = (endDate - startDate).Days + 1; // incl. endDate 

List<DateTime> range = Enumerable.Range(0, days)
    .Select(i => startDate.AddDays(i))
    .ToList();

您可以了解有关列表here

的更多信息