DateTimeOffset.AddDays(Double) メソッド

定義

このインスタンスの値に、指定された整数部と小数部から成る日数を加算した新しい DateTimeOffset オブジェクトを返します。Returns a new DateTimeOffset object that adds a specified number of whole and fractional days to the value of this instance.

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

パラメーター

days
Double

整数部と小数部から成る日数。A number of whole and fractional days. 正数または負数を指定できます。The number can be negative or positive.

戻り値

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

例外

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

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

次の例では、AddDays メソッドを使用して、2008年3月に月曜日の営業週の開始日を一覧表示します。The following example uses the AddDays method to list the dates that fall on Monday, the start of the work week, in March 2008.

DateTimeOffset workDay = new DateTimeOffset(2008, 3, 1, 9, 0, 0, 
                   DateTimeOffset.Now.Offset);
int month = workDay.Month;
// Start with the first Monday of the month
if (workDay.DayOfWeek != DayOfWeek.Monday)
{
   if (workDay.DayOfWeek == DayOfWeek.Sunday)
      workDay = workDay.AddDays(1);
   else   
      workDay = workDay.AddDays(8 - (int)workDay.DayOfWeek);
}
Console.WriteLine("Beginning of Work Week In {0:MMMM} {0:yyyy}:", workDay);
// Add one week to the current date 
do    
{
   Console.WriteLine("   {0:dddd}, {0:MMMM}{0: d}", workDay);
   workDay = workDay.AddDays(7);
} while (workDay.Month == month); 
// The example produces the following output:
//    Beginning of Work Week In March 2008:
//       Monday, March 3
//       Monday, March 10
//       Monday, March 17
//       Monday, March 24
//       Monday, March 31             
Dim workDay As New DateTimeOffset(#3/1/2008 9:00AM#, _
                   DateTimeOffset.Now.Offset)
Dim month As Integer = workDay.Month
' Start with the first Monday of the month
If workDay.DayOfWeek <> DayOfWeek.Monday Then
   If workDay.DayOfWeek = DayOfWeek.Sunday Then
      workDay = workDay.AddDays(1)
   Else   
      workDay = workDay.AddDays(8 - CInt(workDay.DayOfWeek))
   End If
End If
Console.WriteLine("Beginning of Work Week In {0:MMMM} {0:yyyy}:", workDay)
' Add one week to the current date 
Do While workDay.Month = month
   Console.WriteLine("   {0:dddd}, {0:MMMM}{0: d}", workDay)
   workDay = workDay.AddDays(7)
Loop        
' The example produces the following output:
'    Beginning of Work Week In March 2008:
'       Monday, March 3
'       Monday, March 10
'       Monday, March 17
'       Monday, March 24
'       Monday, March 31             

注釈

days パラメーターの小数部は、1日の小数部です。The fractional part of the days parameter is the fractional part of a day. たとえば、4.5 は、4日、12時間、0分、0秒、0ミリ秒に相当します。For example, 4.5 is equivalent to 4 days, 12 hours, 0 minutes, 0 seconds, 0 milliseconds. days パラメーターは、ミリ秒単位で丸められます。The days parameter is rounded to the nearest millisecond.

注意

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

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

1日未満の時間間隔を分数に変換すると、精度が失われることがあります。Converting time intervals of less than a day to a fraction can involve a loss of precision. この問題が発生した場合は、Add メソッドを使用できます。これにより、1回のメソッド呼び出しで複数の種類の時間間隔を指定できるようになり、時間間隔を1日の小数部分に変換する必要がなくなります。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 a day.

適用対象