DateTimeOffset.Add(TimeSpan) メソッド


このインスタンスの値に、指定された時間間隔を加算した新しい DateTimeOffset オブジェクトを返します。Returns a new DateTimeOffset object that adds a specified time interval to the value of this instance.

 DateTimeOffset Add(TimeSpan timeSpan);
public DateTimeOffset Add (TimeSpan timeSpan);
member this.Add : TimeSpan -> DateTimeOffset



正や負の時間間隔を表す TimeSpan オブジェクト。A TimeSpan object that represents a positive or a negative time interval.


現在の DateTimeOffset オブジェクトで表された日時に timeSpan で表された時間間隔を加算した値を示すオブジェクト。An object whose value is the sum of the date and time represented by the current DateTimeOffset object and the time interval represented by timeSpan.


結果として得られる DateTimeOffset 値は MinValue より小さい値です。The resulting DateTimeOffset value is less than MinValue.

- または --or- 結果として得られる DateTimeOffset 値が MaxValue を超えています。The resulting DateTimeOffset value is greater than MaxValue.

次の例では、変換先の間のフライト時間を表す TimeSpan オブジェクトの配列を作成します。The following example creates an array of TimeSpan objects that represent the flight times between destinations. 次に、Add メソッドは、フライトの初期の離陸時間を表す DateTimeOffset オブジェクトにこれらの時刻を追加します。The Add method then adds these times to a DateTimeOffset object that represents a flight's initial takeoff time. 結果には、各宛先でのスケジュールされた到着時刻が反映されます。The result reflects the scheduled arrival time at each destination.

DateTimeOffset takeOff = new DateTimeOffset(2007, 6, 1, 7, 55, 0, 
                             new TimeSpan(-5, 0, 0));
DateTimeOffset currentTime = takeOff;
TimeSpan[] flightTimes = new TimeSpan[]
                  {new TimeSpan(2, 25, 0), new TimeSpan(1, 48, 0)};
Console.WriteLine("Takeoff is scheduled for {0:d} at {0:T}.", 
for (int ctr = flightTimes.GetLowerBound(0); 
     ctr <= flightTimes.GetUpperBound(0); ctr++)
   currentTime = currentTime.Add(flightTimes[ctr]);
   Console.WriteLine("Destination #{0} at {1}.", ctr + 1, currentTime);
Dim takeOff As New DateTimeOffset(#6/1/2007 7:55AM#, _
                                  New TimeSpan(-5, 0, 0))
Dim currentTime As DateTimeOffset = takeOff
Dim flightTimes() As TimeSpan = New TimeSpan() _
                  {New TimeSpan(2, 25, 0), New TimeSpan(1, 48, 0)}
Console.WriteLine("Takeoff is scheduled for {0:d} at {0:T}.", _
For ctr As Integer = flightTimes.GetLowerBound(0) To _
   currentTime = currentTime.Add(flightTimes(ctr))
   Console.WriteLine("Destination #{0} at {1}.", ctr + 1, currentTime)


Add メソッドを使用すると、1回の操作で複数の種類の時間間隔 (日、時間、分、秒、またはミリ秒) を追加できます。You can use the Add method to add more than one kind of time interval (days, hours, minutes, seconds, or milliseconds) in a single operation. このメソッドの動作は、加算演算子と同じです。This method's behavior is identical to the addition operator. DateTimeOffset 構造体は、各時間間隔に対して特殊な追加メソッド (AddDaysAddHoursAddMinutesなど) もサポートします。The DateTimeOffset structure also supports specialized addition methods (such as AddDays, AddHours, and AddMinutes) for each time interval.


このメソッドは、新しい DateTimeOffset オブジェクトを返します。This method returns a new DateTimeOffset object. 日付と時刻に timeSpan を追加することによって、現在のオブジェクトの値を変更することはありません。It does not modify the value of the current object by adding timeSpan to its date and time.

Add メソッドは、現在の DateTimeOffset オブジェクトの Offset プロパティの値には影響しません。The Add method does not affect the value of the current DateTimeOffset object's Offset property.

DateTimeOffset オブジェクトは特定のタイムゾーンの日付と時刻を表していないため、Add メソッドは、日付と時刻の演算を実行するときに特定のタイムゾーンの調整規則を考慮しません。Because a DateTimeOffset object does not represent the date and time in a specific time zone, the Add method does not consider a particular time zone's adjustment rules when it performs date and time arithmetic.

timeSpan パラメーターが nullの場合、このメソッドは元の DateTimeOffset オブジェクトの値を変更せずに返します。If the timeSpan parameter is null, this method returns the value of the original DateTimeOffset object unchanged.