UmAlQuraCalendar.GetDaysInYear(Int32, Int32) Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Рассчитывает число дней в указанном году указанной эры.
public:
override int GetDaysInYear(int year, int era);
public override int GetDaysInYear (int year, int era);
override this.GetDaysInYear : int * int -> int
Public Overrides Function GetDaysInYear (year As Integer, era As Integer) As Integer
Параметры
- year
- Int32
Год.
- era
- Int32
Эра. Следует задать UmAlQuraCalendar.Eras[UmAlQuraCalendar.CurrentEra]
или UmAlQuraEra.
Возвращаемое значение
Число дней в указанном году указанной эры. Возвращенное число дней равно 354 месяцам для обычного года или 355 для високосного.
Исключения
Параметры year
или era
находятся вне поддерживаемого диапазона значений класса UmAlQuraCalendar.
Примеры
В следующем примере вызывается GetDaysInYear метод для получения количества дней в десяти последовательных годах в каждой эре, поддерживаемой классом UmAlQuraCalendar .
using System;
using System.Globalization;
public class Example
{
public static void Main()
{
Calendar cal = new UmAlQuraCalendar();
int currentYear = cal.GetYear(DateTime.Now);
Console.WriteLine("Era Year Days\n");
foreach (int era in cal.Eras) {
for (int year = currentYear; year <= currentYear + 9; year++) {
Console.WriteLine("{0}{1} {2} {3}",
ShowCurrentEra(cal, era), era, year,
cal.GetDaysInYear(year, era));
}
}
Console.WriteLine("\n * Indicates the current era.");
}
private static string ShowCurrentEra(Calendar cal, int era)
{
if (era == cal.Eras[Calendar.CurrentEra])
return "*";
else
return " ";
}
}
// The example displays the following output:
// Era Year Days
//
// *1 1431 354
// *1 1432 354
// *1 1433 355
// *1 1434 354
// *1 1435 355
// *1 1436 354
// *1 1437 354
// *1 1438 354
// *1 1439 355
// *1 1440 354
//
// * Indicates the current era.
Imports System.Globalization
Module Example
Public Sub Main()
Dim cal As New UmAlQuraCalendar()
Dim currentYear As Integer = cal.GetYear(Date.Now)
Console.WriteLine("Era Year Days")
Console.WriteLine()
For Each era As Integer In cal.Eras
For year As Integer = currentYear To currentYear + 9
Console.WriteLine("{0}{1} {2} {3}",
ShowCurrentEra(cal, era), era, year,
cal.GetDaysInYear(year, era))
Next
Next
Console.WriteLine()
Console.WriteLine(" * Indicates the current era.")
End Sub
Private Function ShowCurrentEra(cal As Calendar, era As Integer) As String
If era = cal.Eras(Calendar.CurrentEra) Then
Return "*"
Else
Return " "
End If
End Function
End Module
' The example displays the following output:
' Era Year Days
'
' *1 1431 354
' *1 1432 354
' *1 1433 355
' *1 1434 354
' *1 1435 355
' *1 1436 354
' *1 1437 354
' *1 1438 354
' *1 1439 355
' *1 1440 354
'
' * Indicates the current era.