DateTimeOffset.LessThan(DateTimeOffset, DateTimeOffset) Operator

Definition

Determines whether one specified DateTimeOffset object is less than a second specified DateTimeOffset object.

C#
public static bool operator <(DateTimeOffset left, DateTimeOffset right);

Parameters

left
DateTimeOffset

The first object to compare.

right
DateTimeOffset

The second object to compare.

Returns

true if the UtcDateTime value of left is earlier than the UtcDateTime value of right; otherwise, false.

Remarks

The LessThan method defines the operation of the less than operator for DateTimeOffset objects. It enables code such as the following:

C#
DateTimeOffset date1 = new DateTimeOffset(2007, 6, 3, 14, 45, 0,
             new TimeSpan(-7, 0, 0));
DateTimeOffset date2 = new DateTimeOffset(2007, 6, 3, 15, 45, 0,
             new TimeSpan(-6, 0, 0));
DateTimeOffset date3 = new DateTimeOffset(date1.DateTime,
             new TimeSpan(-8, 0, 0));
Console.WriteLine(date1 < date2);        // Displays False
Console.WriteLine(date1 < date3);        // Displays True

Before evaluating the left and right operands, the operator converts both operands to Coordinated Universal Time (UTC). The operation is equivalent to the following:

C#
return left.UtcDateTime < right.UtcDateTime;

Languages that do not support custom operators can call the Compare method instead. In addition, some languages can also call the LessThan method directly, as the following example shows.

VB
Dim date1 As New DateTimeOffset(#6/3/2007 2:45PM#, _
             New TimeSpan(-7, 0, 0))
Dim date2 As New DateTimeOffset(#6/3/2007 3:45PM#, _
             New TimeSpan(-6, 0, 0))
Dim date3 As New DateTimeOffset(date1.DateTime, _
             New TimeSpan(-8, 0, 0))
Console.WriteLine(DateTimeOffset.op_LessThan(date1, date2))  ' Displays False
Console.WriteLine(DateTimeOffset.op_LessThan(date1, date3))  ' Displays True

The equivalent method for this operator is DateTimeOffset.Compare(DateTimeOffset, DateTimeOffset)

Applies to

Product 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, 10
.NET Framework 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