Open In App

DateTime.Add() Method in C#

Last Updated : 18 Jan, 2019
Improve
Improve
Like Article
Like
Save
Share
Report

This method is used to return a new DateTime that adds the value of the specified TimeSpan to the value of this instance.

Syntax:

public DateTime Add (TimeSpan value);

Here, value is a positive or negative time interval.

Return Value: This method returns an object whose value is the sum of the date and time represented by this instance and the time interval represented by value.

Exceptions: This method will give ArgumentOutOfRangeException if the resulting DateTime is less than MinValue or greater than MaxValue.

Below programs illustrate the use of DateTime.Add(TimeSpan) Method:

Example 1:




// C# program to demonstrate the
// DateTime.Add(TimeSpan) Method
using System;
using System.Globalization;
  
class GFG {
  
    // Main Method
    public static void Main()
    {
        try {
            // creating object of DateTime
            DateTime date1 = new DateTime(2010, 1, 1,
                                           8, 0, 15);
  
            // creating object of TimeSpan
            TimeSpan duration = new TimeSpan(36, 0, 0, 0);
  
            // adding the TimeSpan of 36 days
            // using Add() method;
            DateTime date2 = date1.Add(duration);
  
            // Display the date1
            System.Console.WriteLine("DateTime before "+
                      "operation: {0:y} {0:dd}", date1);
  
            // Display the date2
            System.Console.WriteLine("\nDateTime after"+
                     " operation: {0:y} {0:dd}", date2);
        }
  
        catch (ArgumentOutOfRangeException e) 
        {
            Console.Write("Exception Thrown: ");
            Console.Write("{0}", e.GetType(), e.Message);
        }
    }
}


Output:

DateTime before operation: 2010 January 01

DateTime after operation: 2010 February 06

Example 2: For ArgumentOutOfRangeException




// C# program to demonstrate the
// DateTime.Add(TimeSpan) Method
using System;
using System.Globalization;
  
class GFG {
  
    // Main Method
    public static void Main()
    {
        try {
  
            // creating object of DateTime 
            // and initialize with MinValue
            DateTime date1 = DateTime.MinValue;
  
            // Display the date1
            Console.WriteLine("DateTime before "+
               "operation: {0:y} {0:dd}", date1);
  
            // creating object of TimeSpan
            TimeSpan duration = new TimeSpan(-36, 0, 0, 0);
  
            // adding the TimeSpan of 36 days
            // using Add() method;
            DateTime date2 = date1.Add(duration);
  
            // Display the date2
            Console.WriteLine("\nDateTime after"+
              " operation: {0:y} {0:dd}", date2);
        }
  
        catch (ArgumentOutOfRangeException e)
       {
            Console.WriteLine("\nThe resulting DateTime"+
                          " is less than the MinValue ");
            Console.Write("Exception Thrown: ");
            Console.Write("{0}", e.GetType(), e.Message);
        }
    }
}


Output:

DateTime before operation: 0001 January 01

The resulting DateTime is less than the MinValue 
Exception Thrown: System.ArgumentOutOfRangeException

Note:

  • The Add method takes into account leap years and the number of days in a month when performing date arithmetic.
  • This method does not change the value of this DateTime. Instead, it returns a new DateTime whose value is the result of this operation.

Reference:



Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads