DateTimeOffset Constructor (Int32, Int32, Int32, Int32, Int32, Int32, Int32, Calendar, TimeSpan)
[ This article is for Windows Phone 8 developers. If you’re developing for Windows 10, see the latest documentation. ]
Initializes a new instance of the DateTimeOffset structure using the specified year, month, day, hour, minute, second, millisecond, and offset of a specified calendar.
Assembly: mscorlib (in mscorlib.dll)
'Declaration Public Sub New ( _ year As Integer, _ month As Integer, _ day As Integer, _ hour As Integer, _ minute As Integer, _ second As Integer, _ millisecond As Integer, _ calendar As Calendar, _ offset As TimeSpan _ )
Parameters
- year
- Type: System.Int32
The year.
- month
- Type: System.Int32
The month (1 through 12).
- 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 whose time is defined.
- offset
- Type: System.TimeSpan
The time's offset from Coordinated Universal Time (UTC).
| Exception | Condition |
|---|---|
| ArgumentException | offset does not represent whole minutes. |
| ArgumentNullException | calendar cannot be Nothing. |
| ArgumentOutOfRangeException | year is less than the calendar parameter's MinSupportedDateTime.Year or greater than MaxSupportedDateTime.Year. -or- month is either less than or greater than the number of months in year in the calendar. -or- day is less than one or greater than the number of days in month. -or- hour is less than zero 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. -or- offset is less than -14 hours or greater than 14 hours. -or- The year, month, and day parameters cannot be represented as a date and time value. -or- The UtcDateTime property is earlier than MinValue or later than MaxValue. |
The following example uses instances of both the HebrewCalendar class and the HijriCalendar class to instantiate a DateTimeOffset value. That date is then displayed to the console using the respective calendars and the Gregorian calendar.
Dim fmt As CultureInfo Dim year As Integer Dim cal As Calendar Dim dateInCal As DateTimeOffset ' Instantiate DateTimeOffset with Hebrew calendar year = 5770 cal = New HebrewCalendar() fmt = New CultureInfo("he-IL") fmt.DateTimeFormat.Calendar = cal dateInCal = New DateTimeOffset(year, 7, 12, _ 15, 30, 0, 0, _ cal, _ New TimeSpan(2, 0, 0)) ' Display the date in the Hebrew calendar outputBlock.Text &= String.Format("Date in Hebrew Calendar: {0:g}", _ dateInCal.ToString(fmt)) & vbCrLf ' Display the date in the Gregorian calendar outputBlock.Text &= String.Format("Date in Gregorian Calendar: {0:g}", dateInCal) & vbCrLf outputBlock.Text &= vbCrLf ' Instantiate DateTimeOffset with Hijri calendar year = 1431 cal = New HijriCalendar() fmt = New CultureInfo("ar-SA") fmt.DateTimeFormat.Calendar = cal dateInCal = New DateTimeOffset(year, 7, 12, _ 15, 30, 0, 0, _ cal, _ New TimeSpan(2, 0, 0)) ' Display the date in the Hijri calendar outputBlock.Text &= String.Format("Date in Hijri Calendar: {0:g}", _ dateInCal.ToString(fmt)) & vbCrLf ' Display the date in the Gregorian calendar outputBlock.Text &= String.Format("Date in Gregorian Calendar: {0:g}", dateInCal) & vbCrLf outputBlock.Text &= vbCrLf