How to find the first day of next month,if the current month is december

前端 未结 10 2068
独厮守ぢ
独厮守ぢ 2021-01-01 11:03

I\'m using the following query to get the next month.

int theMonth = ((System.DateTime)periodStartDate).Month+1;

But if the periodstartDate

10条回答
  •  孤独总比滥情好
    2021-01-01 11:49

    The trick part is to understand the start date could not start in the first day of the current month, so a plain AddMonth could lead to undesired dates. Build a new DateTime in the day 01 and, then, add the month.

    var firstDayNextMonth = new DateTime(startDate.Year, startDate.Month, 1).AddMonths(+1);
    

    BTW, the AddMonths method documentation states:

    The AddMonths method calculates the resulting month and year, taking into account leap years and the number of days in a month, then adjusts the day part of the resulting DateTime object. If the resulting day is not a valid day in the resulting month, the last valid day of the resulting month is used. For example, March 31st + 1 month = April 30th, and March 31st - 1 month = February 28 for a non-leap year and February 29 for a leap year.

提交回复
热议问题