Export (0) Print
Expand All

UmAlQuraCalendar.GetDaysInMonth Method (Int32, Int32, Int32)

Calculates the number of days in the specified month of the specified year and era.

Namespace:  System.Globalization
Assembly:  mscorlib (in mscorlib.dll)

public override int GetDaysInMonth(
	int year,
	int month,
	int era
)

Parameters

year
Type: System.Int32

A year.

month
Type: System.Int32

An integer from 1 through 12 that represents a month.

era
Type: System.Int32

An era. Specify UmAlQuraCalendar.Eras[UmAlQuraCalendar.CurrentEra] or UmAlQuraEra.

Return Value

Type: System.Int32
The number of days in the specified month in the specified year and era. The return value is 29 in a common year and 30 in a leap year.

ExceptionCondition
ArgumentOutOfRangeException

year, month, or era is outside the range supported by the UmAlQuraCalendar class.

This method returns a different number of days in a specified month for a common year versus a leap year. For example, this method returns 29 or 30 for Zulhijjah (month = 12), depending on whether year is a leap year.

The following example calls the GetDaysInMonth method to get the number of days in each month of five consecutive years.

using System;
using System.Collections.Generic;
using System.Globalization;

public class Example
{
   public static void Main()
   {
      UmAlQuraCalendar cal = new UmAlQuraCalendar();
      List<string> months = new List<string>();
      string output = String.Empty;

      // Get the current year in the UmAlQura calendar. 
      int startYear = cal.GetYear(DateTime.Now);
      // Display the number of days in each month for the next five years.
      Console.WriteLine("          Days in Each Month, {0} to {1}\n",
                        startYear, startYear + 4);

      Console.WriteLine("Month     {0}     {1}     {2}     {3}     {4}",
                        startYear, startYear + 1, startYear + 2, startYear + 3, 
                        startYear + 4);
      for (int year = startYear; year <= startYear + 4; year++) {
         int days;
         for (int month = 1; month <= cal.GetMonthsInYear(year, UmAlQuraCalendar.UmAlQuraEra);
                             month++)
         {
            days = cal.GetDaysInMonth(year, month, 
                                      UmAlQuraCalendar.UmAlQuraEra);
            output = String.Format("{0}     ", days);
            if (months.Count < month)
               months.Add(String.Format("{0,4}        {1}", 
                                        month, output));
            else
               months[month - 1] += "  " + output;

         }         
      }                  

      foreach (var item in months)
         Console.WriteLine(item);
   }
}
// The example displays the following output: 
//                 Days in Each Month, 1431 to 1435 
//        
//       Month     1431     1432     1433     1434     1435 
//          1        29       29       30       29       30 
//          2        30       30       29       30       29 
//          3        30       30       30       29       30 
//          4        29       30       30       30       29 
//          5        30       29       29       29       30 
//          6        29       30       30       30       29 
//          7        30       29       30       30       30 
//          8        29       30       29       29       29 
//          9        30       29       30       30       30 
//         10        29       30       29       30       30 
//         11        29       29       30       29       29 
//         12        30       29       29       29       30

.NET Framework

Supported in: 4.5.2, 4.5.1, 4.5, 4, 3.5, 3.0, 2.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

.NET for Windows Phone apps

Supported in: Windows Phone 8.1, Windows Phone 8, Silverlight 8.1

Windows Phone 8.1, Windows Phone 8, Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

Show:
© 2014 Microsoft