From 43c2d780507fd68916e0d005aa9a98c769518e55 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E6=BD=87=E9=98=B3?= Date: Mon, 13 Nov 2023 13:56:25 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E4=B8=80=E4=B8=AA=E8=8E=B7?= =?UTF-8?q?=E5=8F=96=E6=97=B6=E9=97=B4=E7=9A=84=E9=9D=99=E6=80=81=E7=B1=BB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Elight.Utility/Extensions/ConvertorHelper.cs | 57 +++++++++++++++++++- 1 file changed, 56 insertions(+), 1 deletion(-) diff --git a/Elight.Utility/Extensions/ConvertorHelper.cs b/Elight.Utility/Extensions/ConvertorHelper.cs index 8bb0c5a..05f3c49 100644 --- a/Elight.Utility/Extensions/ConvertorHelper.cs +++ b/Elight.Utility/Extensions/ConvertorHelper.cs @@ -140,6 +140,61 @@ namespace Elight.Utility.Extensions DateTime dtResult = dtStart.Add(toNow); return dtResult; } - + + } + + public static class DateHelper + { + public static DateTime GetStartDateOfDay(DateTime date) + { + return date.Date; + } + public static DateTime GetEndDateOfDay(DateTime date) + { + return date.Date.AddDays(1).AddSeconds(-1); + } + public static DateTime GetStartDateOfMonth(DateTime date) + { + return date.AddDays(1 - date.Day).Date; + } + public static DateTime GetEndDateOfMonth(DateTime date) + { + return GetStartDateOfMonth(date).AddMonths(1).AddSeconds(-1); + } + public static DateTime GetStartDateOfYear(DateTime date) + { + return date.AddDays(1 - date.Day).AddMonths(1 - date.Month).Date; + } + public static DateTime GetEndDateOfYear(DateTime date) + { + return GetStartDateOfYear(date).AddYears(1).AddSeconds(-1); + } + public static List GetArrayByDay(DateTime starttime, DateTime endtime) + { + var list = new List(); + for (DateTime dt = starttime; dt.Date <= endtime.Date; dt = dt.AddDays(1)) + { + list.Add(dt.Date); + } + return list; + } + public static List GetArrayByMonth(DateTime starttime, DateTime endtime) + { + var list = new List(); + for (DateTime dt = starttime; dt.Date <= endtime.Date; dt = dt.AddMonths(1)) + { + list.Add(GetStartDateOfMonth(dt.Date)); + } + return list; + } + public static List GetArrayByYear(DateTime starttime, DateTime endtime) + { + var list = new List(); + for (DateTime dt = starttime; dt.Date <= endtime.Date; dt = dt.AddYears(1)) + { + list.Add(GetStartDateOfYear(dt.Date)); + } + return list; + } } }