DateTime.AddHours() Method in C# - GeeksforGeeks

21 Jan, 2019
This method is used to return a new DateTime that adds the specified number of hours to the value of this instance.
Syntax:
public DateTime AddHours (double value);
Here, the value is the number of whole and fractional hours. The value parameter can be negative or positive.
Return Value: This method returns an object whose value is the sum of the date and time represented by this instance and the number of hours represented by value.
Exception: This method will give ArgumentOutOfRangeException if the resulting DateTime is less than MinValue or greater than MaxValue.
Below programs illustrate the use of DateTime.AddDays(Double) Method:
Example 1:
// C# program to demonstrate the// DateTime.AddHours(Double) Methodusing System;using System.Globalization;  class GFG {      // Main Method    public static void Main()    {        try {              // creating object of DateTime            DateTime date1 = new DateTime(2010, 1,                                     1, 4, 0, 15);              // adding the 5.50 hours            // using AddHours() method;            DateTime date2 = date1.AddHours(5.50);              // Display the date1            Console.WriteLine("DateTime before operation:"+                            " {0:y} {0:dd}, {0:t}", date1);              // Display the date2            Console.WriteLine("\nDateTime after operation: "+                               "{0:y} {0:dd}, {0:t}", date2);        }          catch (ArgumentOutOfRangeException e)        {            Console.Write("Exception Thrown: ");            Console.Write("{0}", e.GetType(), e.Message);        }    }}
DateTime before operation: 2010 January 01, 04:00

DateTime after operation: 2010 January 01, 09:30

Example 2: For ArgumentOutOfRangeException
// C# program to demonstrate the// DateTime.AddHours(Double) Methodusing System;using System.Globalization;  class GFG {      // Main Method    public static void Main()    {        try {              // creating object of DateTime             // and initialize with MinValue            DateTime date1 = DateTime.MaxValue;              // Display the date1            Console.WriteLine("DateTime before operation: "+                              "{0:y} {0:dd}, {0:t}", date1);              // adding the TimeSpan of 5 days            // using AddHours() method;            DateTime date2 = date1.AddHours(5);              // Display the date2            System.Console.WriteLine("\nDateTime after operation:"+                                    " {0:y} {0:dd}, {0:t}", date2);        }          catch (ArgumentOutOfRangeException e)         {            Console.WriteLine("\nThe resulting DateTime is "+                      "greater than the DateTime.MaxValue ");              Console.Write("Exception Thrown: ");            Console.Write("{0}", e.GetType(), e.Message);        }    }}
DateTime before operation: 9999 December 31, 23:59

The resulting DateTime is greater than the DateTime.MaxValue 
Exception Thrown: System.ArgumentOutOfRangeException

Note:
This method does not change the value of this DateTime. Instead, it returns a new DateTime whose value is the result of this operation.
The fractional part of the value is the fractional part of a minute. For example, 7.5 is equivalent to 7 minutes, 30 seconds, 0 milliseconds, and 0 ticks.
The value parameter is rounded to the nearest millisecond.
Reference:
https://docs.microsoft.com/en-us/dotnet/api/system.datetime.addhours?view=netframework-4.7.2
CSharp DateTime Struct
CSharp-method
C#
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.
Destructors in C#
Extension Method in C#
HashSet in C# with Examples
Top 50 C# Interview Questions & Answers
C# | How to insert an element in an Array?
Partial Classes in C#
C# | Inheritance
C# | List Class
Difference between Hashtable and Dictionary in C#
Lambda Expressions in C#