Как я могу найти в последний день месяца в C#?
Например, если у меня есть дата 08.03.1980, как я добираюсь в последний день месяца 8 (в этом случае 31)?
Последний день месяца, который вы видите, возвращает 31:
DateTime.DaysInMonth(1980, 08);
DateTime firstOfNextMonth = new DateTime(date.Year, date.Month, 1).AddMonths(1);
DateTime lastOfThisMonth = firstOfNextMonth.AddDays(-1);
var lastDayOfMonth = DateTime.DaysInMonth(date.Year, date.Month);
Вычтите день из первого числа следующего месяца:
DateTime lastDay = new DateTime(MyDate.Year,MyDate.Month+1,1).AddDays(-1);
Кроме того, если вам нужно, чтобы он работал и в декабре:
DateTime lastDay = new DateTime(MyDate.Year,MyDate.Month,1).AddMonths(1).AddDays(-1);
Я не знаю C #, но, если окажется, что нет удобного способа получить его через API, один из способов сделать это - следуя логике:
today -> +1 month -> set day of month to 1 -> -1 day
Конечно, это предполагает, что у вас есть математика даты такого типа.