DateTime.Day Property

Definition

Gets the day of the month represented by this instance.

public int Day { get; }

Property Value

The day component, expressed as a value between 1 and 31.

Examples

The following example demonstrates the Day property.

System.DateTime moment = new System.DateTime(
                                1999, 1, 13, 3, 57, 32, 11);
// Year gets 1999.
int year = moment.Year;

// Month gets 1 (January).
int month = moment.Month;

// Day gets 13.
int day = moment.Day;

// Hour gets 3.
int hour = moment.Hour;

// Minute gets 57.
int minute = moment.Minute;

// Second gets 32.
int second = moment.Second;

// Millisecond gets 11.
int millisecond = moment.Millisecond;

Remarks

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 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.
DateTime dateGregorian = new DateTime(2009, 1, 13);
Console.WriteLine(dateGregorian.Day);
// Displays 13 (Gregorian day).

// Create date of 1/13/2009 using Hijri calendar.
HijriCalendar hijri = new HijriCalendar();
DateTime dateHijri = new DateTime(1430, 1, 17, hijri);
// Return day of date created using Hijri calendar.
Console.WriteLine(dateHijri.Day);
// Displays 13 (Gregorian day).

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

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

CultureInfo originalCulture = Thread.CurrentThread.CurrentCulture;

// Change current culture to ar-SA.
CultureInfo ci = new CultureInfo("ar-SA");
Thread.CurrentThread.CurrentCulture = ci;

DateTime hijriDate = new DateTime(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;

Applies to

Produit Versions
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 2.0, 2.1
UWP 10.0