DateTime Constructor (Int32, Int32, Int32, Int32, Int32, Int32, Int32, Calendar, DateTimeKind)
Initializes a new instance of the DateTime structure to the specified year, month, day, hour, minute, second, millisecond, and Coordinated Universal Time (UTC) or local time for the specified calendar.
Namespace: System
Assembly: mscorlib (in mscorlib.dll)
Parameters
- year
- Type: System::Int32
The year (1 through the number of years in calendar).
- month
- Type: System::Int32
The month (1 through the number of months in calendar).
- day
- Type: System::Int32
The day (1 through the number of days in month).
- hour
- Type: System::Int32
The hours (0 through 23).
- minute
- Type: System::Int32
The minutes (0 through 59).
- second
- Type: System::Int32
The seconds (0 through 59).
- millisecond
- Type: System::Int32
The milliseconds (0 through 999).
- calendar
- Type: System.Globalization::Calendar
The calendar to use to interpret year, month, and day.
- kind
- Type: System::DateTimeKind
One of the enumeration values that indicates whether year, month, day, hour, minute, second, and millisecond specify a local time, Coordinated Universal Time (UTC), or neither.
| Exception | Condition |
|---|---|
| ArgumentNullException | calendar is nullptr. |
| ArgumentOutOfRangeException | year is not in the range supported by calendar. -or- month is less than 1 or greater than the number of months in calendar. -or- day is less than 1 or greater than the number of days in month. -or- hour is less than 0 or greater than 23. -or- minute is less than 0 or greater than 59. -or- second is less than 0 or greater than 59. -or- millisecond is less than 0 or greater than 999. |
| ArgumentException | The specified date and time parameters evaluate to earlier than DateTime::MinValue or later than DateTime::MaxValue. -or- kind is not one of the DateTimeKind values. |
The allowable values for year, month, and day parameters depend on the calendar parameter. An exception is thrown if the specified date and time cannot be expressed using calendar.
For applications in which a limited degree of time zone awareness is important, you can use the corresponding DateTimeOffset constructor.
The System.Globalization namespace provides several calendars including GregorianCalendar, HebrewCalendar, HijriCalendar, and JapaneseCalendar.
The following example calls the DateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32, Calendar, DateTimeKind) constructor to instantiate a DateTime value by using a HijriCalendar object. The DateTime value in the Hijri calendar is then displayed in two different ways. Because the current culture may not support the Hijri calendar, the date in the Hijri calendar is displayed by making individual calls to its HijriCalendar::GetMonth, HijriCalendar::GetDayOfMonth, and HijriCalendar::GetYear methods. The example then changes the current culture to Arabic (Syria) and changes the current culture's default calendar to the Hijri calendar. Because Hijri is now the current culture's default calendar, the ToString(String, IFormatProvider) method, which is called implicitly by the String::Format method, uses it to format the date. When the previous current culture (which is English (United States) in this case) is restored, the ToString(String, IFormatProvider) method uses the current culture's default Gregorian calendar to format the date.
For a list of the operating systems and browsers that are supported by Silverlight, see Supported Operating Systems and Browsers.