UmAlQuraCalendar.GetDaysInYear(Int32, Int32) Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Calculates the number of days in the specified year of the specified era.
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
Parameters
- year
- Int32
A year.
- era
- Int32
An era. Specify UmAlQuraCalendar.Eras[UmAlQuraCalendar.CurrentEra]
or UmAlQuraEra.
Returns
The number of days in the specified year and era. The number of days is 354 in a common year or 355 in a leap year.
Exceptions
year
or era
is outside the range supported by the UmAlQuraCalendar class.
Examples
The following example calls the GetDaysInYear method to get the number of days in ten consecutive years in each era supported by the UmAlQuraCalendar class.
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.