GregorianCalendar.AddMonths(DateTime, Int32) Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
public:
override DateTime AddMonths(DateTime time, int months);
public override DateTime AddMonths(DateTime time, int months);
override this.AddMonths : DateTime * int -> DateTime
Public Overrides Function AddMonths (time As DateTime, months As Integer) As DateTime
Parametreler
- months
- Int32
Eklenecek ay sayısı.
Döndürülenler
Belirtilen DateTime ay sayısını belirtilen öğesine eklemenin DateTimesonucu.
Özel durumlar
Elde edilen DateTime değer desteklenen aralığın dışındadır.
Örnekler
Aşağıdaki kod örneği, Gregoryen takvim açısından bir DateTime öğesinin çeşitli bileşenlerinin değerlerini görüntüler.
using System;
using System.Globalization;
public class SamplesGregorianCalendar {
public static void Main() {
// Sets a DateTime to April 3, 2002 of the Gregorian calendar.
DateTime myDT = new DateTime( 2002, 4, 3, new GregorianCalendar() );
// Creates an instance of the GregorianCalendar.
GregorianCalendar myCal = new GregorianCalendar();
// Displays the values of the DateTime.
Console.WriteLine( "April 3, 2002 of the Gregorian calendar:" );
DisplayValues( myCal, myDT );
// Adds two years and ten months.
myDT = myCal.AddYears( myDT, 2 );
myDT = myCal.AddMonths( myDT, 10 );
// Displays the values of the DateTime.
Console.WriteLine( "After adding two years and ten months:" );
DisplayValues( myCal, myDT );
}
public static void DisplayValues( Calendar myCal, DateTime myDT ) {
Console.WriteLine( " Era: {0}", myCal.GetEra( myDT ) );
Console.WriteLine( " Year: {0}", myCal.GetYear( myDT ) );
Console.WriteLine( " Month: {0}", myCal.GetMonth( myDT ) );
Console.WriteLine( " DayOfYear: {0}", myCal.GetDayOfYear( myDT ) );
Console.WriteLine( " DayOfMonth: {0}", myCal.GetDayOfMonth( myDT ) );
Console.WriteLine( " DayOfWeek: {0}", myCal.GetDayOfWeek( myDT ) );
Console.WriteLine();
}
}
/*
This code produces the following output.
April 3, 2002 of the Gregorian calendar:
Era: 1
Year: 2002
Month: 4
DayOfYear: 93
DayOfMonth: 3
DayOfWeek: Wednesday
After adding two years and ten months:
Era: 1
Year: 2005
Month: 2
DayOfYear: 34
DayOfMonth: 3
DayOfWeek: Thursday
*/
Imports System.Globalization
Public Class SamplesGregorianCalendar
Public Shared Sub Main()
' Sets a DateTime to April 3, 2002 of the Gregorian calendar.
Dim myDT As New DateTime(2002, 4, 3, New GregorianCalendar())
' Creates an instance of the GregorianCalendar.
Dim myCal As New GregorianCalendar()
' Displays the values of the DateTime.
Console.WriteLine("April 3, 2002 of the Gregorian calendar:")
DisplayValues(myCal, myDT)
' Adds two years and ten months.
myDT = myCal.AddYears(myDT, 2)
myDT = myCal.AddMonths(myDT, 10)
' Displays the values of the DateTime.
Console.WriteLine("After adding two years and ten months:")
DisplayValues(myCal, myDT)
End Sub
Public Shared Sub DisplayValues(myCal As Calendar, myDT As DateTime)
Console.WriteLine(" Era: {0}", myCal.GetEra(myDT))
Console.WriteLine(" Year: {0}", myCal.GetYear(myDT))
Console.WriteLine(" Month: {0}", myCal.GetMonth(myDT))
Console.WriteLine(" DayOfYear: {0}", myCal.GetDayOfYear(myDT))
Console.WriteLine(" DayOfMonth: {0}", myCal.GetDayOfMonth(myDT))
Console.WriteLine(" DayOfWeek: {0}", myCal.GetDayOfWeek(myDT))
Console.WriteLine()
End Sub
End Class
'This code produces the following output.
'
'April 3, 2002 of the Gregorian calendar:
' Era: 1
' Year: 2002
' Month: 4
' DayOfYear: 93
' DayOfMonth: 3
' DayOfWeek: Wednesday
'
'After adding two years and ten months:
' Era: 1
' Year: 2005
' Month: 2
' DayOfYear: 34
' DayOfMonth: 3
' DayOfWeek: Thursday
Açıklamalar
Sonuçta elde edilen gün, sonuçta DateTime elde edilen yılın sonuç ayında geçerli bir gün değilse, sonuçta elde edilen günün gün bölümü etkilenir. Bu, sonuçta elde edilen yılın sonuç ayındaki son geçerli güne değiştirilir. Sonuçta elde DateTime edilen ay belirtilen DateTimeyılın dışındaysa, sonuçta elde edilen yılın yıl bölümü etkilenir. Bu uygulama yalnızca geçerli dönemi destekler. Bu nedenle, ArgumentException sonuçta elde edilen yıl belirtilen DateTimeçağın dışındaysa oluşturulur. Sonuçta elde DateTime edilen günün saati bölümü, belirtilen DateTimeile aynı kalır.
Örneğin, belirtilen ay 31 gün içeren Ekim ise, belirtilen gün o ayın 31. günüdür ve parametrenin months değeri 6'dır, sonuçta elde edilen yıl belirtilen yıldan bir fazladır, sonuçta elde edilen ay Nisan'dır ve sonuçta elde edilen gün nisan ayının son günü olan 30. gündür.
Parametresinin months değeri negatifse, sonuçta DateTime belirtilen DateTimedeğerinden daha erken olur.
Kind Döndürülen DateTime değerin özelliği her zaman eşittirDateTimeKind.Unspecified. Aşağıdaki örnekte gösterildiği gibi yöntemini çağırarak DateTime.SpecifyKind parametresinin time özelliğini koruyabilirsinizKind.
returnTime = DateTime.SpecifyKind(cal.AddMonths(time, months), time.Kind);
returnTime = DateTime.SpecifyKind(cal.AddMonths(time, months), time.Kind)