Was this page helpful?
Your feedback about this content is important. Let us know what you think.
Additional feedback?
1500 characters remaining
CompareTo Method (Object)
Collapse the table of content
Expand the table of content

DateTime::CompareTo Method (Object)

Compares the value of this instance to a specified object that contains a specified DateTime value, and returns an integer that indicates whether this instance is earlier than, the same as, or later than the specified DateTime value.

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

virtual int CompareTo(
	Object^ value
) sealed


Type: System::Object

A boxed object to compare, or nullptr.

Return Value

Type: System::Int32
A signed number indicating the relative values of this instance and value.



Less than zero

This instance is earlier than value.


This instance is the same as value.

Greater than zero

This instance is later than value, or value is nullptr.




value is not a DateTime.

To determine the relationship of the current instance to value, the CompareTo method compares the Ticks property of the current instance and value but ignores their Kind property. Before comparing DateTime objects, make sure that the objects represent times in the same time zone. You can do this by comparing the values of their Kind properties.

Any instance of DateTime, regardless of its value, is considered greater than nullptr.

The following example demonstrates the CompareTo method.

using namespace System;
void main()

   System::DateTime theDay(System::DateTime::Today.Year,7,28);
   int compareValue;
      compareValue = theDay.CompareTo( System::DateTime::Today );
   catch ( ArgumentException^ ) 
      System::Console::WriteLine( "Value is not a DateTime" );

   if ( compareValue < 0 )
      System::Console::WriteLine( "{0:d} is in the past.", theDay );
   if ( compareValue == 0 )
      System::Console::WriteLine( "{0:d} is today!", theDay );
   // compareValue > 0 
      System::Console::WriteLine( "{0:d} has not come yet.", theDay );

.NET Framework

Supported in: 4.6, 4.5, 4, 3.5, 3.0, 2.0, 1.1

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

XNA Framework

Supported in: 3.0, 2.0, 1.0

.NET for Windows Phone apps

Supported in: Windows Phone 8.1, Windows Phone Silverlight 8.1, Windows Phone Silverlight 8
© 2015 Microsoft