C# 每小时(包括时间)

本文关键字:时间 包括 每小时 | 更新日期: 2023-09-27 18:31:38

我正在绘制柱形图。其中 x 轴是日期类型

天 - 以小时为单位绘制

周 - 以天为单位绘制

月 - 以周为单位绘制

半年一次 - 以周为单位绘制

每年 - 以月为单位绘制

我有一个如下逻辑来绘制天数的图形

for (DateTime graphStartDate = startDate; graphStartDate < endDate; graphStartDate = graphStartDate.AddHours(1))

例如,这是我的开始日期和结束日期10/10/2013 12:00:00 AM10/10/2013 9:32:00 PM上面的代码将只拾取9:00 PM的图形,并省略30分钟(这也是要考虑的)。我如何编写一个循环,该循环也将包含到计算中。这也必须实施数周,因为我将做+7天,我可能会遗漏1 - 6天,这对最终用户来说是宝贵的信息

C# 每小时(包括时间)

将结束日期舍入到下一个小时/天/月

DateTime dt = DateTime.Now;
Console.WriteLine(dt);
//hour
Console.WriteLine(dt.AddMinutes(60 - dt.Minute));
//day
Console.WriteLine(dt.AddHours(24 - dt.Hour));
//week
Console.WriteLine(dt.AddDays(7-(int)dt.DayOfWeek));
//month
Console.WriteLine(dt.AddDays(DateTime.DaysInMonth(dt.Year,dt.Month)-dt.Day));

注意夏令时