CalendarAlgorithmType Enumeration

Specifies whether a calendar is solar-based, lunar-based, or lunisolar-based.

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

[ComVisibleAttribute(true)]
public enum CalendarAlgorithmType

Member nameDescription
UnknownAn unknown calendar basis.
SolarCalendarA solar-based calendar.
LunarCalendarA lunar-based calendar.
LunisolarCalendarA lunisolar-based calendar.

A date calculation for a particular calendar depends on whether the calendar is solar-based, lunar-based, or lunisolar-based. For example, the GregorianCalendar, JapaneseCalendar, and JulianCalendar classes are solar-based, the HijriCalendar and UmAlQuraCalendar classes are lunar-based,.and the HebrewCalendar and JapaneseLunisolarCalendar classes are lunisolar-based, thus using solar calculations for the year and lunar calculations for the month and day.

A CalendarAlgorithmType value, which is returned by a calendar member such as the Calendar.AlgorithmType property, specifies the foundation for a particular calendar.

The following code example demonstrates the AlgorithmType property and the CalendarAlgorithmType enumeration.

// This example demonstrates the Calendar.AlgorithmType property and 
// CalendarAlgorithmType enumeration. 

using System;
using System.Globalization;

class Sample 
{
    public static void Main() 
    {
    GregorianCalendar grCal = new GregorianCalendar();
    HijriCalendar     hiCal = new HijriCalendar();
    JapaneseLunisolarCalendar 
                      jaCal = new JapaneseLunisolarCalendar();
    Display(grCal);
    Display(hiCal);
    Display(jaCal);
    }

    static void Display(Calendar c)
    {
    string name = c.ToString().PadRight(50, '.');
    Console.WriteLine("{0} {1}", name, c.AlgorithmType);
    }
}
/*
This code example produces the following results:

System.Globalization.GregorianCalendar............ SolarCalendar
System.Globalization.HijriCalendar................ LunarCalendar
System.Globalization.JapaneseLunisolarCalendar.... LunisolarCalendar

*/

Windows 7, Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98

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

.NET Framework

Supported in: 3.5, 3.0, 2.0
Was this page helpful?
(1500 characters remaining)
Thank you for your feedback

Community Additions

ADD
Show:
© 2014 Microsoft