UmAlQuraCalendar.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.
Belirtilen başlangıç tarihinden belirli sayıda ay uzaklıkta olan bir tarihi hesaplar.
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
- time
- DateTime
Ayların ekleneceği tarih. UmAlQuraCalendar sınıfı yalnızca 30.04.1900 00.00.00 (Gregoryen tarih) ile 16.11.2077 23:59:59 (Gregoryen tarih) tarihleri destekler.
- months
- Int32
Eklenecek pozitif veya negatif ay sayısı.
Döndürülenler
parametresi tarafından belirtilen ay sayısı parametresi tarafından months
belirtilen time
tarihe eklenerek elde edilen tarih.
Özel durumlar
Sonuç tarihi, sınıfı tarafından desteklenen aralığın UmAlQuraCalendar dışındadır.
months
-120.000'den küçük veya 120.000'den büyük.
-veya-
time
bu takvim tarafından desteklenen aralığın dışında.
Örnekler
Aşağıdaki örnek bir DateTime değerin örneğini oluşturur ve Um Al Qura takviminde bileşenlerinin birkaçının değerlerini görüntüler. Ardından, Um Al Qura takviminde AddYears tarih değerine 2 yıl ve 10 ay eklemek için ve AddMonths yöntemlerini çağırır. Son olarak, Um Al Qura takviminde bu tarih bileşenlerinin değerlerini yeniden görüntüler.
using System;
using System.Globalization;
public class Example
{
public static void Main()
{
DateTime date1 = new DateTime(2011, 4, 3, new GregorianCalendar());
Calendar cal = new UmAlQuraCalendar();
Console.WriteLine("{0:MMMM d, yyyy} in the Gregorian calendar is equivalent to:", date1);
DisplayCalendarInfo(cal, date1);
// Add 2 years and 10 months by calling UmAlQuraCalendar methods.
date1 = cal.AddYears(date1, 2);
date1 = cal.AddMonths(date1, 10);
Console.WriteLine("After adding 2 years and 10 months in the {0} calendar,",
GetCalendarName(cal));
Console.WriteLine("{0:MMMM d, yyyy} in the Gregorian calendar is equivalent to:", date1);
DisplayCalendarInfo(cal, date1);
}
private static void DisplayCalendarInfo(Calendar cal, DateTime date1)
{
Console.WriteLine(" Calendar: {0}", GetCalendarName(cal));
Console.WriteLine(" Era: {0}", cal.GetEra(date1));
Console.WriteLine(" Year: {0}", cal.GetYear(date1));
Console.WriteLine(" Month: {0}", cal.GetMonth(date1));
Console.WriteLine(" DayOfYear: {0}", cal.GetDayOfYear(date1));
Console.WriteLine(" DayOfMonth: {0}", cal.GetDayOfMonth(date1));
Console.WriteLine(" DayOfWeek: {0}\n", cal.GetDayOfWeek(date1));
}
private static string GetCalendarName(Calendar cal)
{
return cal.ToString().Replace("System.Globalization.", "").
Replace("Calendar", "");
}
}
// The example displays the following output:
// April 3, 2011 in the Gregorian calendar is equivalent to:
// Calendar: UmAlQura
// Era: 1
// Year: 1432
// Month: 4
// DayOfYear: 118
// DayOfMonth: 29
// DayOfWeek: Sunday
//
// After adding 2 years and 10 months in the UmAlQura calendar,
// January 1, 2014 in the Gregorian calendar is equivalent to:
// Calendar: UmAlQura
// Era: 1
// Year: 1435
// Month: 2
// DayOfYear: 59
// DayOfMonth: 29
// DayOfWeek: Wednesday
Imports System.Globalization
Module Example
Public Sub Main()
Dim date1 As Date = New Date(2011, 4, 3, New GregorianCalendar())
Dim cal As New UmAlQuraCalendar()
Console.WriteLine("{0:MMMM d, yyyy} in the Gregorian calendar is equivalent to:", date1)
DisplayCalendarInfo(cal, date1)
' Add 2 years and 10 months by calling UmAlQuraCalendar methods.
date1 = cal.AddYears(date1, 2)
date1 = cal.AddMonths(date1, 10)
Console.WriteLine("After adding 2 years and 10 months in the {0} calendar,",
GetCalendarName(cal))
Console.WriteLine("{0:MMMM d, yyyy} in the Gregorian calendar is equivalent to:", date1)
DisplayCalendarInfo(cal, date1)
End Sub
Private Sub DisplayCalendarInfo(cal As Calendar, date1 As Date)
Console.WriteLine(" Calendar: {0}", GetCalendarName(cal))
Console.WriteLine(" Era: {0}", cal.GetEra(date1))
Console.WriteLine(" Year: {0}", cal.GetYear(date1))
Console.WriteLine(" Month: {0}", cal.GetMonth(date1))
Console.WriteLine(" DayOfYear: {0}", cal.GetDayOfYear(date1))
Console.WriteLine(" DayOfMonth: {0}", cal.GetDayOfMonth(date1))
Console.WriteLine(" DayOfWeek: {0}", cal.GetDayOfWeek(date1))
Console.WriteLine()
End Sub
Private Function GetCalendarName(cal As Calendar) As String
Return cal.ToString().Replace("System.Globalization.", "").
Replace("Calendar", "")
End Function
End Module
' The example displays the following output:
' April 3, 2011 in the Gregorian calendar is equivalent to:
' Calendar: UmAlQura
' Era: 1
' Year: 1432
' Month: 4
' DayOfYear: 118
' DayOfMonth: 29
' DayOfWeek: Sunday
'
' After adding 2 years and 10 months in the UmAlQura calendar,
' January 1, 2014 in the Gregorian calendar is equivalent to:
' Calendar: UmAlQura
' Era: 1
' Year: 1435
' Month: 2
' DayOfYear: 59
' DayOfMonth: 29
' DayOfWeek: Wednesday
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ı içinde son geçerli güne değiştirilir. Sonuçta elde DateTime edilen ayın belirtilen DateTimeyılın dışında olması durumunda, sonuçta elde edilen yılın yıl bölümü etkilenir. Bu uygulama yalnızca geçerli dönemi destekler. Bu nedenle, sonuçta elde edilen yıl belirtilen DateTimeçağın dışındaysa bir özel durum oluşturulur. Sonuçta elde DateTime edilen günün saati bölümü belirtilen DateTimeile aynı kalır.
Örneğin, belirtilen ay 30 günü olan Zulkadah ise, belirtilen gün o ayın 30. günüdür ve parametrenin months
değeri 3'tür, sonuçta elde edilen yıl belirtilen yıldan bir fazladır, sonuçta elde edilen ay Safar'dır ve sonuçta elde edilen gün safar'ın son günü olan 29. 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 özelliğini time
koruyabilirsinizKind.
returnTime = DateTime.SpecifyKind(cal.AddMonths(time, months), time.Kind);
returnTime = DateTime.SpecifyKind(cal.AddMonths(time, months), time.Kind)