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

Hey! I'm Anil Singh. I author this blog. I'm Active Blogger, Programmer. I love learning new technologies, programming, blogging and participating the forum discussions more...
My Blogs - https://code-sample.com and https://code-sample.xyz
My Books - Interview Questions and Answers Books- Get Your Book in 15+ Digital Stores Worldwide..

You Might Also Like
Post a Comment
www.code-sample.com/. Powered by Blogger.
ASK Questions
SQL Server NodeJs TypeScript JavaScript Angular SQL Server My Book