UmAlQuraCalendar.AddYears(DateTime, Int32) Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Berechnet ein Datum, das dem angegebenen Zeitintervall zu einem angegebenen Anfangsdatum in Jahren entspricht.
public:
override DateTime AddYears(DateTime time, int years);
public override DateTime AddYears (DateTime time, int years);
override this.AddYears : DateTime * int -> DateTime
Public Overrides Function AddYears (time As DateTime, years As Integer) As DateTime
Parameter
- time
- DateTime
Das Datum, dem Jahre hinzugefügt werden sollen. Die UmAlQuraCalendar-Klasse unterstützt nur Daten ab 30.04.1900 00.00.00 (gregorianisches Datum) bis 16.11.2077 23:59:59 (gregorianisches Datum).
- years
- Int32
Die positive oder negative Anzahl von Jahren, die hinzugefügt werden sollen.
Gibt zurück
Das Datum, das sich ergibt, wenn dem durch den years
-Parameter angegebenen Datum die durch den time
-Parameter angegebene Anzahl von Jahren hinzugefügt wird.
Ausnahmen
Das resultierende Datum liegt außerhalb des von der UmAlQuraCalendar-Klasse unterstützten Bereichs.
years
ist kleiner als -10.000 oder größer als 10.000.
- oder -
time
liegt außerhalb des Bereichs, der von diesem Kalender unterstützt wird.
Beispiele
Im folgenden Beispiel wird ein DateTime Wert instanziiert und die Werte mehrerer seiner Komponenten im Um AL Qura-Kalender angezeigt. Als Nächstes werden die AddYears Methoden und AddMonths aufgerufen, um dem Datumswert 2 Jahre und 10 Monate im Um Al Qura-Kalender hinzuzufügen. Schließlich werden erneut die Werte dieser Datumskomponenten im Um Al Qura-Kalender angezeigt.
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
Hinweise
Der Tagesteil des resultierenden DateTime ist betroffen, wenn der resultierende Tag kein gültiger Tag im resultierenden Monat des resultierenden Jahres ist. Sie wird in den letzten gültigen Tag im resultierenden Monat des resultierenden Jahres geändert. Der Monatsteil des resultierenden DateTime bleibt mit dem angegebenen DateTimeidentisch. Diese Implementierung unterstützt nur die aktuelle Ära. Daher wird eine Ausnahme ausgelöst, wenn sich das resultierende Jahr außerhalb der Ära des angegebenen DateTimebefindet. Der Tageszeitteil des resultierenden DateTime bleibt mit dem angegebenen DateTimeidentisch.
Beispielsweise hat Zulhijjah 29 Tage, außer in Schaltjahren, wenn es 30 Tage hat. Wenn das angegebene Datum der 30. Tag von Zulhijjah in einem Schaltjahr ist und der Wert des years
Parameters 1 ist, ist das resultierende Datum der 29. Tag von Zulhijjah im folgenden Jahr.
Wenn years
negativ ist, ist das Ergebnis DateTime früher als der angegebene DateTime.
Die Kind Eigenschaft des zurückgegebenen DateTime Werts DateTimeKind.Unspecifiedentspricht immer . Sie können die Kind -Eigenschaft des time
Parameters beibehalten, indem Sie die DateTime.SpecifyKind -Methode aufrufen, wie im folgenden Beispiel gezeigt.
returnTime = DateTime.SpecifyKind(cal.AddYears(time, years), time.Kind);
returnTime = DateTime.SpecifyKind(cal.AddYears(time, years), time.Kind)