Я работаю с датами в C# и вам нужно рассчитать некоторые дополнительные даты. Принимая ток datetime
.Получить конкретные даты
Как получить следующие значения?
- конец дня
- конца месяца
- конца года
Я работаю с датами в C# и вам нужно рассчитать некоторые дополнительные даты. Принимая ток datetime
.Получить конкретные даты
Как получить следующие значения?
Если по end of ...
вы имеете в виду 12:59:59.999PM
в тот день, то :
конец дня
var today = DateTime.Today;
var endOfDay = new DateTime(
today.Year,
today.Month,
today.Day,
23,
59,
59,
999
);
конец месяца
var today = DateTime.Today;
var endOfMonth = new DateTime(
today.Year,
today.Month,
DateTime.DaysInMonth(today.Year, today.Month),
23,
59,
59,
999
);
конец года
var today = DateTime.Today;
var endOfYear = new DateTime(
today.Year,
12,
31,
23,
59,
59,
999
);
Если вы имеете в виду что-то другое, то объяснить, что вы имеете в виду.
Это 12:59 или 11:59? –
Конечно, должно быть 11:59. Спасибо что подметил это. Я обновил свой ответ. –
Для конца месяца
DateTime today = DateTime.Today;
DateTime endOfMonth = new DateTime(today.Year, today.Month, DateTime.DaysInMonth(today.Year, today.Month));
см How can I get the last day of the month in C#?
Для конца
годаDateTime endOfYear = new DateTime(today.Year, 12, 31);
В конце дня, предполагая, что в конце дня закрытия бизнеса в 5 вечера
DateTime endOfDay = new DateTime(today.Year, today.Month, today.day, 17, 0, 0); // Assuming the business end of day is at 5 PM
Подробнее о DateTime в http://msdn.microsoft.com/en-us/library/system.datetime.aspx
Последний день месяца:
DateTime today = DateTime.Now;
DateTime lastDayOfMonth = new DateTime(today.Year, today.Month, DateTime.DaysInMonth(today.Year, today.Month));
Последний день года:
DateTime today = DateTime.Now;
DateTime lastDayOfYear = new DateTime(today.Year, 12, 31);
Что вы имеете в виду _END из .._? –
Что вы подразумеваете под конец дня? Вы имеете в виду конец рабочего дня, например, 5 вечера или 11,59 вечера? – unlimit