Duration (Pacific Standard Time):
To (Pacific Standard Time):
Impact:
  • None
User Action:
  • None
.NET Framework Class Library

DateTime.Day Property

Gets the day of the month represented by this instance.

Namespace:  System
Assembly:  mscorlib (in mscorlib.dll)
Public ReadOnly Property Day As Integer

Property Value

Type: System.Int32
The day component, expressed as a value between 1 and 31.

The Day property always returns the day of the month in the Gregorian calendar, even if the current DateTime value was instantiated using some other calendar or if the current thread culture's default calendar is not the Gregorian calendar. To retrieve the day of the month of a particular date using some other calendar, call that calendar's Calendar.GetDayOfMonth method. The following example uses both the Day property and the HijriCalendar.GetDayOfMonth method to retrieve the day of the month for a DateTime value that is instantiated using the Hijri calendar.

' Return day of 1/13/2009. 
Dim dateGregorian As Date = #1/13/2009#
Console.WriteLine(dateGregorian.Day)
' Displays 13 (Gregorian date). 

' Create date of 1/13/2009 using Hijri calendar. 
Dim hijri As New HijriCalendar()
Dim dateHijri As Date = New Date(1430, 1, 17, hijri)
' Return day of date created using Hijri calendar.
Console.WriteLine(dateHijri.Day)                   
' Displays 13 (Gregorian date). 

' Display day of date in Hijri calendar.
Console.WriteLine(hijri.GetDayOfMonth(dateHijri))  
' Displays 17 (Hijri date).

Similarly, the following example uses both the Day property and the HijriCalendar.GetDayOfMonth method to retrieve the day of the month when the current thread culture is ar-SA, which uses Hijri as its default calendar.

Dim originalCulture As CultureInfo = Thread.CurrentThread.CurrentCulture

' Change current culture to ar-SA. 
Dim ci As New CultureInfo("ar-SA")
Thread.CurrentThread.CurrentCulture = ci

Dim hijriDate As New Date(1430, 1, 17, _
                          Thread.CurrentThread.CurrentCulture.Calendar)
' Display date (uses calendar of current culture by default).
Console.WriteLine(hijriDate.ToString("dd-MM-yyyy"))
' Displays 17-01-1430. 

' Display day of 17th of Muharram
Console.WriteLine(hijriDate.Day)
' Displays 13 (corresponding day of January in Gregorian calendar). 

' Display day of 17th of Muharram in Hijri calendar.
Console.WriteLine(Thread.CurrentThread.CurrentCulture.Calendar.GetDayOfMonth(hijriDate))
' Displays 17.

Thread.CurrentThread.CurrentCulture = originalCulture  

The following example demonstrates the Day property.

Dim moment As New System.DateTime(1999, 1, 13, 3, 57, 32, 11)

' Year gets 1999. 
Dim year As Integer = moment.Year

' Month gets 1 (January). 
Dim month As Integer = moment.Month

' Day gets 13. 
Dim day As Integer = moment.Day

' Hour gets 3. 
Dim hour As Integer = moment.Hour

' Minute gets 57. 
Dim minute As Integer = moment.Minute

' Second gets 32. 
Dim second As Integer = moment.Second

' Millisecond gets 11. 
Dim millisecond As Integer = moment.Millisecond

.NET Framework

Supported in: 4.5, 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Portable Class Library

Supported in: Portable Class Library

.NET for Windows Store apps

Supported in: Windows 8

.NET for Windows Phone apps

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

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.