Add Month to Current Date C#

5 Best Ways to Add Month To Current Date [How to Add in C#?]

I have a date (2017-04-14) and want to add 1 month to this date using AddMonths(1) and the resulting date is 2017-05-14.

Syntax:-
DateTime.Now.AddMonths(1); // 2017-04-14

Example as,
public static class DateTime_Extensions
{
    //METHOD 1
    public static DateTime AddMonthsCustom(this DateTime source, int months)
    {
        DateTime result = source.AddMonths(months);
        if (source.Day != DateTime.DaysInMonth(source.Year, source.Month))
            return result;
    }

   //METHOD 2
    public static DateTime AddMonths(this DateTime date)
    {
         if (date.Day != DateTime.DaysInMonth(date.Year, date.Month))
            return date.AddMonths(1);
         else 
           return date.AddMonths(1);
     }

    //METHOD 3
    public static DateTime AddSmartMonths(this DateTime date, int nMonths)
    {
        int year = date.Year;
        int month = date.Month;
        int day = date.Day;

        if ((day == 30) && (day < DateTime.DaysInMonth(year, month)))
            date = date.AddDays(1);
        else if ((month == 1) && (day > 28))
            date = new DateTime(year, month, 31);

        return date.AddMonths(nMonths);
    }
}

I hope you are enjoying with this post! Please share with you friends. Thank you so much!
ANIL SINGH

Anil Singh is an author, tech blogger, and software programmer. Book writing, tech blogging is something do extra and Anil love doing it. For more detail, kindly refer to this link..

My Tech Blog - https://www.code-sample.com/
My Books - Book 1 and Book 2

www.code-sample.com/. Powered by Blogger.
^