DateTimeOffset.AddHours(Double) DateTimeOffset.AddHours(Double) DateTimeOffset.AddHours(Double) DateTimeOffset.AddHours(Double) Method

Definition

Gibt ein neues DateTimeOffset-Objekt zurück, das eine angegebene Anzahl von ganzen Stunden und Bruchteilen von Stunden zum Wert dieser Instanz addiert.Returns a new DateTimeOffset object that adds a specified number of whole and fractional hours to the value of this instance.

public:
 DateTimeOffset AddHours(double hours);
public DateTimeOffset AddHours (double hours);
member this.AddHours : double -> DateTimeOffset
Public Function AddHours (hours As Double) As DateTimeOffset

Parameter

hours
Double Double Double Double

Eine Zahl, die aus ganzen Stunden und dem Bruchteil einer Stunde besteht.A number of whole and fractional hours. Die Zahl kann negativ oder positiv sein.The number can be negative or positive.

Gibt zurück

Ein Objekt, dessen Wert die Summe aus der vom aktuellen DateTimeOffset-Objekt dargestellten Datums- und Uhrzeitangabe und der von hours dargestellten Anzahl von Stunden ist.An object whose value is the sum of the date and time represented by the current DateTimeOffset object and the number of hours represented by hours.

Ausnahmen

Der resultierende DateTimeOffset-Wert ist kleiner als MinValue.The resulting DateTimeOffset value is less than MinValue.

- oder --or- Der resultierende DateTimeOffset-Wert ist größer als MaxValue.The resulting DateTimeOffset value is greater than MaxValue.

Beispiele

Im folgenden Beispiel wird die AddHours -Methode verwendet, um die Startzeiten von arbeitsverschiebungen für eine bestimmte Woche in einem Büro aufzulisten, bei der pro Tag 2 8 Stunden verschoben werden.The following example uses the AddHours method to list the start times of work shifts for a particular week at an office that has two eight-hour shifts per day.

const int SHIFT_LENGTH = 8;

DateTimeOffset startTime = new DateTimeOffset(2007, 8, 6, 0, 0, 0, 
                     DateTimeOffset.Now.Offset);
DateTimeOffset startOfShift = startTime.AddHours(SHIFT_LENGTH);

Console.WriteLine("Shifts for the week of {0:D}", startOfShift);
do
{ 
   // Exclude third shift
   if (startOfShift.Hour > 6)
      Console.WriteLine("   {0:d} at {0:T}", startOfShift);

   startOfShift = startOfShift.AddHours(SHIFT_LENGTH);
} while (startOfShift.DayOfWeek != DayOfWeek.Saturday &
           startOfShift.DayOfWeek != DayOfWeek.Sunday);
// The example produces the following output:
//
//    Shifts for the week of Monday, August 06, 2007
//       8/6/2007 at 8:00:00 AM
//       8/6/2007 at 4:00:00 PM
//       8/7/2007 at 8:00:00 AM
//       8/7/2007 at 4:00:00 PM
//       8/8/2007 at 8:00:00 AM
//       8/8/2007 at 4:00:00 PM
//       8/9/2007 at 8:00:00 AM
//       8/9/2007 at 4:00:00 PM
//       8/10/2007 at 8:00:00 AM
//       8/10/2007 at 4:00:00 PM                 
Const SHIFT_LENGTH As Integer = 8

Dim startTime As New DateTimeOffset(#8/6/2007 12:00:00AM#, _
                     DateTimeOffset.Now.Offset)
Dim startOfShift As DateTimeOffset = startTime.AddHours(SHIFT_LENGTH)

Console.WriteLine("Shifts for the week of {0:D}", startOfShift)                           
Do 
   ' Exclude third shift
   If startOfShift.Hour > 6 Then _
      Console.WriteLine("   {0:d} at {0:T}", startOfShift)

   startOfShift = startOfShift.AddHours(SHIFT_LENGTH)
Loop While startOfShift.DayOfWeek <> DayOfWeek.Saturday And _
           startOfShift.DayOfWeek <> DayOfWeek.Sunday
          
' The example produces the following output:
'
'    Shifts for the week of Monday, August 06, 2007
'       8/6/2007 at 8:00:00 AM
'       8/6/2007 at 4:00:00 PM
'       8/7/2007 at 8:00:00 AM
'       8/7/2007 at 4:00:00 PM
'       8/8/2007 at 8:00:00 AM
'       8/8/2007 at 4:00:00 PM
'       8/9/2007 at 8:00:00 AM
'       8/9/2007 at 4:00:00 PM
'       8/10/2007 at 8:00:00 AM
'       8/10/2007 at 4:00:00 PM                 

Hinweise

Der Bruchteile des hours -Parameters ist der Bruchteil einer Stunde.The fractional part of the hours parameter is the fractional part of an hour. 4,5 entspricht z. b. 4 Stunden, 30 Minuten, 0 Sekunden, 0 Millisekunden.For example, 4.5 is equivalent to 4 hours, 30 minutes, 0 seconds, 0 milliseconds. Der hours -Parameter wird auf die nächste Millisekunde gerundet.The hours parameter is rounded to the nearest millisecond.

Hinweis

Diese Methode gibt ein neues DateTimeOffset -Objekt zurück.This method returns a new DateTimeOffset object. Der Wert des aktuellen-Objekts wird durch Hinzufügen hours zu Datum und Uhrzeit nicht geändert.It does not modify the value of the current object by adding hours to its date and time.

Da ein DateTimeOffset -Objekt das Datum und die Uhrzeit in einer bestimmten Zeitzone nicht darstellt, berücksichtigt AddHours die Methode beim Ausführen von Datums-und Uhrzeit Arithmetik nicht die Anpassungsregeln einer bestimmten Zeitzone.Because a DateTimeOffset object does not represent the date and time in a specific time zone, the AddHours method does not consider a particular time zone's adjustment rules when it performs date and time arithmetic.

Das Umrechnen von Zeitintervallen von weniger als einer Stunde in einen Bruchteil kann zu einem Genauigkeits Verlust führen.Converting time intervals of less than an hour to a fraction can involve a loss of precision. (Eine Minute beträgt z. b. 0,01666 einer Stunde.) Wenn dies problematisch ist, können Sie die Add -Methode verwenden, die es Ihnen ermöglicht, mehr als eine Art Zeitintervall in einem einzelnen Methodenaufruf anzugeben, und es entfällt, dass Sie Zeitintervalle in Bruchteile einer Stunde konvertieren müssen.(For example, one minute is 0.01666 of an hour.) If this is problematic, you can use the Add method, which enables you to specify more than one kind of time interval in a single method call and eliminates the need to convert time intervals to fractional parts of an hour.

Gilt für:

Siehe auch