Export (0) Print
Expand All
This topic has not yet been rated - Rate this topic

DateTimeOffset Structure

Represents a point in time, typically expressed as a date and time of day, relative to Coordinated Universal Time (UTC).

Namespace:  System
Assembly:  mscorlib (in mscorlib.dll)
public struct DateTimeOffset : IComparable, 
	IFormattable, IComparable<DateTimeOffset>, IEquatable<DateTimeOffset>

The DateTimeOffset type exposes the following members.

  NameDescription
Public methodSupported by Silverlight for Windows PhoneSupported by Xbox 360DateTimeOffset(DateTime)Initializes a new instance of the DateTimeOffset structure using the specified DateTime value.
Public methodSupported by Silverlight for Windows PhoneSupported by Xbox 360DateTimeOffset(DateTime, TimeSpan)Initializes a new instance of the DateTimeOffset structure using the specified DateTime value and offset.
Public methodSupported by Silverlight for Windows PhoneSupported by Xbox 360DateTimeOffset(Int64, TimeSpan)Initializes a new instance of the DateTimeOffset structure using the specified number of ticks and offset.
Public methodSupported by Silverlight for Windows PhoneSupported by Xbox 360DateTimeOffset(Int32, Int32, Int32, Int32, Int32, Int32, TimeSpan)Initializes a new instance of the DateTimeOffset structure using the specified year, month, day, hour, minute, second, and offset.
Public methodSupported by Silverlight for Windows PhoneSupported by Xbox 360DateTimeOffset(Int32, Int32, Int32, Int32, Int32, Int32, Int32, TimeSpan)Initializes a new instance of the DateTimeOffset structure using the specified year, month, day, hour, minute, second, millisecond, and offset.
Public methodSupported by Silverlight for Windows PhoneSupported by Xbox 360DateTimeOffset(Int32, Int32, Int32, Int32, Int32, Int32, Int32, Calendar, TimeSpan)Initializes a new instance of the DateTimeOffset structure using the specified year, month, day, hour, minute, second, millisecond, and offset of a specified calendar.
Top
  NameDescription
Public propertySupported by Silverlight for Windows PhoneSupported by Xbox 360DateGets a DateTime value that represents the date component of the current DateTimeOffset object.
Public propertySupported by Silverlight for Windows PhoneSupported by Xbox 360DateTimeGets a DateTime value that represents the date and time of the current DateTimeOffset object.
Public propertySupported by Silverlight for Windows PhoneSupported by Xbox 360DayGets the day of the month represented by the current DateTimeOffset object.
Public propertySupported by Silverlight for Windows PhoneSupported by Xbox 360DayOfWeekGets the day of the week represented by the current DateTimeOffset object.
Public propertySupported by Silverlight for Windows PhoneSupported by Xbox 360DayOfYearGets the day of the year represented by the current DateTimeOffset object.
Public propertySupported by Silverlight for Windows PhoneSupported by Xbox 360HourGets the hour component of the time represented by the current DateTimeOffset object.
Public propertySupported by Silverlight for Windows PhoneSupported by Xbox 360LocalDateTimeGets a DateTime value that represents the local date and time of the current DateTimeOffset object.
Public propertySupported by Silverlight for Windows PhoneSupported by Xbox 360MillisecondGets the millisecond component of the time represented by the current DateTimeOffset object.
Public propertySupported by Silverlight for Windows PhoneSupported by Xbox 360MinuteGets the minute component of the time represented by the current DateTimeOffset object.
Public propertySupported by Silverlight for Windows PhoneSupported by Xbox 360MonthGets the month component of the date represented by the current DateTimeOffset object.
Public propertyStatic memberSupported by Silverlight for Windows PhoneSupported by Xbox 360NowGets a DateTimeOffset object that is set to the current date and time on the current computer, with the offset set to the local time's offset from Coordinated Universal Time (UTC).
Public propertySupported by Silverlight for Windows PhoneSupported by Xbox 360OffsetGets the time's offset from Coordinated Universal Time (UTC).
Public propertySupported by Silverlight for Windows PhoneSupported by Xbox 360SecondGets the second component of the clock time represented by the current DateTimeOffset object.
Public propertySupported by Silverlight for Windows PhoneSupported by Xbox 360TicksGets the number of ticks that represents the date and time of the current DateTimeOffset object in clock time.
Public propertySupported by Silverlight for Windows PhoneSupported by Xbox 360TimeOfDayGets the time of day for the current DateTimeOffset object.
Public propertySupported by Silverlight for Windows PhoneSupported by Xbox 360UtcDateTimeGets a DateTime value that represents the Coordinated Universal Time (UTC) date and time of the current DateTimeOffset object.
Public propertyStatic memberSupported by Silverlight for Windows PhoneSupported by Xbox 360UtcNowGets a DateTimeOffset object whose date and time are set to the current Coordinated Universal Time (UTC) date and time and whose offset is TimeSpan.Zero.
Public propertySupported by Silverlight for Windows PhoneSupported by Xbox 360UtcTicksGets the number of ticks that represents the date and time of the current DateTimeOffset object in Coordinated Universal Time (UTC).
Public propertySupported by Silverlight for Windows PhoneSupported by Xbox 360YearGets the year component of the date represented by the current DateTimeOffset object.
Top
  NameDescription
Public methodSupported by Silverlight for Windows PhoneSupported by Xbox 360AddAdds a specified time interval to a DateTimeOffset object.
Public methodSupported by Silverlight for Windows PhoneSupported by Xbox 360AddDaysAdds a specified number of whole and fractional days to the current DateTimeOffset object.
Public methodSupported by Silverlight for Windows PhoneSupported by Xbox 360AddHoursAdds a specified number of whole and fractional hours to the current DateTimeOffset object.
Public methodSupported by Silverlight for Windows PhoneSupported by Xbox 360AddMillisecondsAdds a specified number of milliseconds to the current DateTimeOffset object.
Public methodSupported by Silverlight for Windows PhoneSupported by Xbox 360AddMinutesAdds a specified number of whole and fractional minutes to the current DateTimeOffset object.
Public methodSupported by Silverlight for Windows PhoneSupported by Xbox 360AddMonthsAdds a specified number of months to the current DateTimeOffset object.
Public methodSupported by Silverlight for Windows PhoneSupported by Xbox 360AddSecondsAdds a specified number of whole and fractional seconds to the current DateTimeOffset object.
Public methodSupported by Silverlight for Windows PhoneSupported by Xbox 360AddTicksAdds a specified number of ticks to the current DateTimeOffset object.
Public methodSupported by Silverlight for Windows PhoneSupported by Xbox 360AddYearsAdds a specified number of years to the DateTimeOffset object.
Public methodStatic memberSupported by Silverlight for Windows PhoneSupported by Xbox 360CompareCompares two DateTimeOffset objects and indicates whether the first is earlier than the second, equal to the second, or later than the second.
Public methodSupported by Silverlight for Windows PhoneSupported by Xbox 360CompareToCompares the current DateTimeOffset object to a specified DateTimeOffset object and indicates whether the current object is earlier than, the same as, or later than the second DateTimeOffset object.
Public methodSupported by Silverlight for Windows PhoneSupported by Xbox 360Equals(DateTimeOffset)Determines whether the current DateTimeOffset object represents the same point in time as a specified DateTimeOffset object.
Public methodSupported by Silverlight for Windows PhoneSupported by Xbox 360Equals(Object)Determines whether a DateTimeOffset object represents the same point in time as a specified object. (Overrides ValueType.Equals(Object).)
Public methodStatic memberSupported by Silverlight for Windows PhoneSupported by Xbox 360Equals(DateTimeOffset, DateTimeOffset)Determines whether two specified DateTimeOffset objects represent the same point in time.
Public methodSupported by Silverlight for Windows PhoneSupported by Xbox 360EqualsExactDetermines whether the current DateTimeOffset object represents the same time and has the same offset as a specified DateTimeOffset object.
Protected methodSupported by Silverlight for Windows PhoneSupported by Xbox 360FinalizeAllows an object to try to free resources and perform other cleanup operations before the Object is reclaimed by garbage collection. (Inherited from Object.)
Public methodStatic memberSupported by Silverlight for Windows PhoneSupported by Xbox 360FromFileTimeConverts the specified Windows file time to an equivalent local time.
Public methodSupported by Silverlight for Windows PhoneSupported by Xbox 360GetHashCodeReturns the hash code for the current DateTimeOffset object. (Overrides ValueType.GetHashCode().)
Public methodSupported by Silverlight for Windows PhoneSupported by Xbox 360GetTypeGets the Type of the current instance. (Inherited from Object.)
Protected methodSupported by Silverlight for Windows PhoneSupported by Xbox 360MemberwiseCloneCreates a shallow copy of the current Object. (Inherited from Object.)
Public methodStatic memberSupported by Silverlight for Windows PhoneSupported by Xbox 360Parse(String)Converts the specified string representation of a date, time, and offset to its DateTimeOffset equivalent.
Public methodStatic memberSupported by Silverlight for Windows PhoneSupported by Xbox 360Parse(String, IFormatProvider)Converts the specified string representation of a date and time to its DateTimeOffset equivalent using the specified culture-specific format information.
Public methodStatic memberSupported by Silverlight for Windows PhoneSupported by Xbox 360Parse(String, IFormatProvider, DateTimeStyles)Converts the specified string representation of a date and time to its DateTimeOffset equivalent using the specified culture-specific format information and formatting style.
Public methodStatic memberSupported by Silverlight for Windows PhoneSupported by Xbox 360ParseExact(String, String, IFormatProvider)Converts the specified string representation of a date and time to its DateTimeOffset equivalent using the specified format and culture-specific format information. The format of the string representation must match the specified format exactly.
Public methodStatic memberSupported by Silverlight for Windows PhoneSupported by Xbox 360ParseExact(String, String, IFormatProvider, DateTimeStyles)Converts the specified string representation of a date and time to its DateTimeOffset equivalent using the specified format, culture-specific format information, and style. The format of the string representation must match the specified format exactly.
Public methodStatic memberSupported by Silverlight for Windows PhoneSupported by Xbox 360ParseExact(String, String[], IFormatProvider, DateTimeStyles)Converts the specified string representation of a date and time to its DateTimeOffset equivalent using the specified formats, culture-specific format information, and style. The format of the string representation must match one of the specified formats exactly.
Public methodSupported by Silverlight for Windows PhoneSupported by Xbox 360Subtract(DateTimeOffset)Subtracts a DateTimeOffset value that represents a specific date and time from the current DateTimeOffset object.
Public methodSupported by Silverlight for Windows PhoneSupported by Xbox 360Subtract(TimeSpan)Subtracts a specified time interval from the current DateTimeOffset object.
Public methodSupported by Silverlight for Windows PhoneSupported by Xbox 360ToFileTimeConverts the value of the current DateTimeOffset object to a Windows file time.
Public methodSupported by Silverlight for Windows PhoneSupported by Xbox 360ToLocalTimeConverts the current DateTimeOffset object to a DateTimeOffset object that represents the local time.
Public methodSupported by Silverlight for Windows PhoneSupported by Xbox 360ToOffsetConverts the value of the current DateTimeOffset object to the date and time specified by an offset value.
Public methodSupported by Silverlight for Windows PhoneSupported by Xbox 360ToString()Converts the value of the current DateTimeOffset object to its equivalent string representation. (Overrides ValueType.ToString().)
Public methodSupported by Silverlight for Windows PhoneSupported by Xbox 360ToString(IFormatProvider)Converts the value of the current DateTimeOffset object to its equivalent string representation using the specified culture-specific formatting information.
Public methodSupported by Silverlight for Windows PhoneSupported by Xbox 360ToString(String)Converts the value of the current DateTimeOffset object to its equivalent string representation using the specified format.
Public methodSupported by Silverlight for Windows PhoneSupported by Xbox 360ToString(String, IFormatProvider)Converts the value of the current DateTimeOffset object to its equivalent string representation using the specified format and culture-specific format information.
Public methodSupported by Silverlight for Windows PhoneSupported by Xbox 360ToUniversalTimeConverts the current DateTimeOffset object to a DateTimeOffset value that represents the Coordinated Universal Time (UTC).
Public methodStatic memberSupported by Silverlight for Windows PhoneSupported by Xbox 360TryParse(String, DateTimeOffset)Tries to converts a specified string representation of a date and time to its DateTimeOffset equivalent, and returns a value that indicates whether the conversion succeeded.
Public methodStatic memberSupported by Silverlight for Windows PhoneSupported by Xbox 360TryParse(String, IFormatProvider, DateTimeStyles, DateTimeOffset)Tries to convert a specified string representation of a date and time to its DateTimeOffset equivalent, and returns a value that indicates whether the conversion succeeded.
Public methodStatic memberSupported by Silverlight for Windows PhoneSupported by Xbox 360TryParseExact(String, String, IFormatProvider, DateTimeStyles, DateTimeOffset)Converts the specified string representation of a date and time to its DateTimeOffset equivalent using the specified format, culture-specific format information, and style. The format of the string representation must match the specified format exactly.
Public methodStatic memberSupported by Silverlight for Windows PhoneSupported by Xbox 360TryParseExact(String, String[], IFormatProvider, DateTimeStyles, DateTimeOffset)Converts the specified string representation of a date and time to its DateTimeOffset equivalent using the specified array of formats, culture-specific format information, and style. The format of the string representation must match one of the specified formats exactly.
Top
  NameDescription
Public operatorStatic memberSupported by Silverlight for Windows PhoneSupported by Xbox 360AdditionAdds a specified time interval to a DateTimeOffset object that has a specified date and time, and yields a DateTimeOffset object that has new a date and time.
Public operatorStatic memberSupported by Silverlight for Windows PhoneSupported by Xbox 360EqualityDetermines whether two specified DateTimeOffset objects represent the same point in time.
Public operatorStatic memberSupported by Silverlight for Windows PhoneSupported by Xbox 360GreaterThanDetermines whether one specified DateTimeOffset object is greater than (or later than) a second specified DateTimeOffset object.
Public operatorStatic memberSupported by Silverlight for Windows PhoneSupported by Xbox 360GreaterThanOrEqualDetermines whether one specified DateTimeOffset object is greater than or equal to a second specified DateTimeOffset object.
Public operatorStatic memberSupported by Silverlight for Windows PhoneSupported by Xbox 360Implicit(DateTime to DateTimeOffset)Defines an implicit conversion of a DateTime object to a DateTimeOffset object.
Public operatorStatic memberSupported by Silverlight for Windows PhoneSupported by Xbox 360InequalityDetermines whether two specified DateTimeOffset objects refer to different points in time.
Public operatorStatic memberSupported by Silverlight for Windows PhoneSupported by Xbox 360LessThanDetermines whether one specified DateTimeOffset object is less than a second specified DateTimeOffset object.
Public operatorStatic memberSupported by Silverlight for Windows PhoneSupported by Xbox 360LessThanOrEqualDetermines whether one specified DateTimeOffset object is less than a second specified DateTimeOffset object.
Public operatorStatic memberSupported by Silverlight for Windows PhoneSupported by Xbox 360Subtraction(DateTimeOffset, DateTimeOffset)Subtracts one DateTimeOffset object from another and yields a time interval.
Public operatorStatic memberSupported by Silverlight for Windows PhoneSupported by Xbox 360Subtraction(DateTimeOffset, TimeSpan)Subtracts a specified time interval from a specified date and time, and yields a new date and time.
Top
  NameDescription
Public fieldStatic memberSupported by Silverlight for Windows PhoneSupported by Xbox 360MaxValueRepresents the greatest possible value of DateTimeOffset. This field is read-only.
Public fieldStatic memberSupported by Silverlight for Windows PhoneSupported by Xbox 360MinValueRepresents the earliest possible DateTimeOffset value. This field is read-only.
Top
  NameDescription
Explicit interface implemetationPrivate methodSupported by Silverlight for Windows PhoneSupported by Xbox 360IComparable.CompareToInfrastructure. Compares the value of the current DateTimeOffset object with another object of the same type.
Top

The DateTimeOffset structure includes a DateTime value, together with an Offset property that defines the difference between the current DateTimeOffset instance's date and time and Coordinated Universal Time (UTC). Because it exactly defines a date and time relative to UTC, the DateTimeOffset structure does not include a Kind member, as the DateTime structure does. It represents dates and times with values whose UTC ranges from 12:00:00 midnight, January 1, 0001 C.E., to 11:59:59 P.M., December 31, 9999 C.E.

The time component of a DateTimeOffset value is measured in 100-nanosecond units called ticks, and a particular date is the number of ticks since 12:00 midnight, January 1, 0001 A.D. (C.E.) in the GregorianCalendar calendar. A DateTimeOffset value is always expressed in the context of an explicit or default calendar. Ticks that are attributable to leap seconds are not included in the total number of ticks.

NoteNote:

   If you are working with a ticks value that you need to convert to somTimeSpan e other time interval, such as minutes or seconds, you should use the TimeSpan.TicksPerDay, TimeSpan.TicksPerHour, TimeSpan.TicksPerMinute, TimeSpan.TicksPerSecond, or TimeSpan.TicksPerMillisecond constant to perform the conversion. For example, to add the number of seconds represented by a specified number of ticks to the Second component of a DateTimeOffset value, you can use the expression dateValue.Second + nTicks/Timespan.TicksPerSecond.

Although a DateTimeOffset value includes an offset, it is not a fully time zone-aware data structure. While an offset from UTC is one characteristic of a time zone, it does not unambiguously identify a time zone. Not only do multiple time zones share the same offset from UTC, but the offset of a single time zone changes if it observes daylight saving time. This means that, as soon as a DateTimeOffset value is disassociated from its time zone, it can no longer be unambiguously linked back to its original time zone.

Because DateTimeOffset is a structure, a DateTimeOffset object that has been declared but not otherwise initialized contains the default values for each of its member fields. This means that its DateTime property is set to DateTimeOffset.MinValue and its Offset property is set to TimeSpan.Zero.

You can create a new DateTimeOffset value by calling any of the overloads of its constructor, which are similar to the overloaded constructors for the DateTime structure. You can also create a new DateTimeOffset value by assigning it a DateTime value. This is an implicit conversion; it does not require a casting operator (in C#) or call to a conversion method (in Visual Basic). You can also initialize a DateTimeOffset value from the string representation of a date and time by calling a number of static string parsing methods, which include Parse, ParseExact, TryParse, and TryParseExact.

The members of the DateTimeOffset structure provide functionality in the following areas:

  • Date and time arithmetic.

    You can add or subtract either dates or time intervals from a particular DateTimeOffset value. Arithmetic operations with DateTimeOffset values, unlike those with DateTime values, adjust for differences in time offsets when returning a result. For example, the following code uses DateTime variables to subtract the current local time from the current UTC time. The code then uses DateTimeOffset variables to perform the same operation. The subtraction with DateTime values returns the local time zone's difference from UTC, while the subtraction with DateTimeOffset values returns TimeSpan.Zero.

    
    using System;
    
    public class Example
    {
       public static void Demo(System.Windows.Controls.TextBlock outputBlock)
       {
          DateTime date1, date2;
          DateTimeOffset dateOffset1, dateOffset2;
          TimeSpan difference;
    
          // Find difference between Date.Now and Date.UtcNow
          date1 = DateTime.Now;
          date2 = DateTime.UtcNow;
          difference = date1 - date2;
          outputBlock.Text += String.Format("{0} - {1} = {2}", date1, date2, difference) + "\n";
    
          // Find difference between Now and UtcNow using DateTimeOffset
          dateOffset1 = DateTimeOffset.Now;
          dateOffset2 = DateTimeOffset.UtcNow;
          difference = dateOffset1 - dateOffset2;
          outputBlock.Text += String.Format("{0} - {1} = {2}",
                            dateOffset1, dateOffset2, difference) + "\n";
          // If run in the Pacific Standard time zone on 4/2/2007, the example
          // displays the following output:
          //    4/2/2007 7:23:57 PM - 4/3/2007 2:23:57 AM = -07:00:00
          //    4/2/2007 7:23:57 PM -07:00 - 4/3/2007 2:23:57 AM +00:00 = 00:00:00                        
       }
    }
    
    
    
  • Type conversion operations.

    You can convert DateTimeOffset values to DateTime values and vice versa.

  • Time manipulation and extraction operations.

    You can extract either the date or the time of a DateTimeOffset value. You can also retrieve the value of a particular DateTimeOffset component, such as its year or its month.

  • Date and time conversion.

    You can convert any DateTimeOffset value to another DateTimeOffset value that represents the same point in time in the local time zone or UTC. If applicable, the local time zone's adjustment rules are applied in the conversion.

  • Date and time comparison.

    You can determine whether any particular DateTimeOffset value is earlier than, the same as, or later than another DateTimeOffset value. Before the comparison is performed, all values are converted to UTC.

Silverlight

Supported in: 5, 4, 3

Silverlight for Windows Phone

Supported in: Windows Phone OS 7.1, Windows Phone OS 7.0

XNA Framework

Supported in: Xbox 360, Windows Phone OS 7.0

For a list of the operating systems and browsers that are supported by Silverlight, see Supported Operating Systems and Browsers.

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Community Additions

ADD
Show:
© 2014 Microsoft. All rights reserved.