DateTimeOffset Implicit Conversion (DateTime to DateTimeOffset)


The .NET API Reference documentation has a new home. Visit the .NET API Browser on to see the new experience.


Defines an implicit conversion of a DateTime object to a DateTimeOffset object.

Namespace:   System
Assembly:  mscorlib (in mscorlib.dll)

public static implicit operator DateTimeOffset (
	DateTime dateTime


Type: System.DateTime

The object to convert.

Return Value

Type: System.DateTimeOffset

The converted object.

Exception Condition

The Coordinated Universal Time (UTC) date and time that results from applying the offset is earlier than MinValue.


The UTC date and time that results from applying the offset is later than MaxValue.

The Implicit(DateTime to DateTimeOffset) method enables the compiler to automatically convert a DateTime object to a DateTimeOffset object without an explicit casting operator (in C#) or a call to a conversion function (in Visual Basic). It defines a widening conversion that does not involve data loss and does not throw an OverflowException. The Implicit(DateTime to DateTimeOffset) method makes code such as the following possible:

DateTimeOffset timeWithOffset; 
timeWithOffset = new DateTime(1008, 7, 3, 18, 45, 0);

timeWithOffset = DateTime.UtcNow;

timeWithOffset = DateTime.SpecifyKind(DateTime.Now, 

timeWithOffset = new DateTime(2008, 1, 1, 2, 30, 0) + 
                 new TimeSpan(1, 0, 0, 0);
// The example produces the following output if run on 3/20/2007 
// at 6:25 PM on a computer in the U.S. Pacific Daylight Time zone:
//       7/3/2008 6:45:00 PM -07:00
//       3/21/2007 1:25:52 AM +00:00
//       3/20/2007 6:25:52 PM -07:00
//       1/2/2008 2:30:00 AM -08:00      

This method is equivalent to the DateTimeOffset constructor. The offset of the resulting DateTimeOffset object depends on the value of the DateTime.Kind property of the dateTime parameter:

Universal Windows Platform
Available since 8
.NET Framework
Available since 2.0
Portable Class Library
Supported in: portable .NET platforms
Available since 2.0
Windows Phone Silverlight
Available since 7.0
Windows Phone
Available since 8.1
Return to top