首页 > 解决方案 > C#在两个日期时间对象之间每隔两小时获取一次

问题描述

我想获取两个日期时间对象之间每两小时的列表

以下是我每隔一小时尝试的内容:

TimeSpan betweenTime = EndTime - StartTime; // 15:00PM - 09:00AM 
IEnumerable<int> hoursBetween = Enumerable.Range(0, (int)betweenTime.TotalHours).Select(i => StartTime.AddHours(i).Hour);   

//Output for hoursBetween
9
10
11
12  
13
14

//if between is every two hour
//the expected Output be like
9
11
13

标签: c#.netdatetime

解决方案


你可以使用

IEnumerable<int> hoursBetween = Enumerable.Range(0, (int)Math.Ceiling(betweenTime.TotalHours / 2)).Select(i => StartTime.AddHours(i * 2).Hour); 

推荐阅读