DateTime.Add() Method in C#
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:
- https://docs.microsoft.com/en-us/dotnet/api/system.datetime.add?view=netframework-4.7.2
Contact Us