Returns the number of days in the specified month and year.
Namespace: System
Assembly: mscorlib (in mscorlib.dll)
Parameters
- year
- Type: System.Int32
The year.
- month
- Type: System.Int32
The month (a number ranging from 1 to 12).
Return Value
Type: System.Int32The number of days in month for the specified year.
For example, if month equals 2 for February, the return value is 28 or 29 depending upon whether year is a leap year.
| Exception | Condition |
|---|---|
| ArgumentOutOfRangeException | month is less than 1 or greater than 12. -or- year is less than 1 or greater than 9999. |
The DaysInMonth method always interprets month and year as the month and year of the Gregorian calendar even if the Gregorian calendar is not the current culture's current calendar. To get the number of days in a specified month of a particular calendar, call that calendar's GetDaysInMonth method.
The following example demonstrates the DaysInMonth method.
using System; class Example { static void Main() { const int July = 7; const int Feb = 2; int daysInJuly = System.DateTime.DaysInMonth(2001, July); Console.WriteLine(daysInJuly); // daysInFeb gets 28 because the year 1998 was not a leap year. int daysInFeb = System.DateTime.DaysInMonth(1998, Feb); Console.WriteLine(daysInFeb); // daysInFebLeap gets 29 because the year 1996 was a leap year. int daysInFebLeap = System.DateTime.DaysInMonth(1996, Feb); Console.WriteLine(daysInFebLeap); } } // The example displays the following output: // 31 // 28 // 29
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.