Export (0) Print
Expand All

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)

public int CompareTo (
	Object value
)
public final int CompareTo (
	Object value
)
public final function CompareTo (
	value : Object
) : int
Not applicable.

Parameters

value

A boxed DateTime object to compare, or a null reference (Nothing in Visual Basic).

Return Value

A signed number indicating the relative values of this instance and value.

Value

Description

Less than zero

This instance is earlier than value.

Zero

This instance is the same as value.

Greater than zero

This instance is later than value, or value is a null reference (Nothing in Visual Basic).

Exception typeCondition

ArgumentException

value is not a DateTime.

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 a null reference (Nothing in Visual Basic).

The following code example demonstrates the CompareTo method.

System.DateTime theDay = 
          new System.DateTime(System.DateTime.Today.Year, 7, 28);

int compareValue;
try {
    compareValue = theDay.CompareTo(System.DateTime.Today);
} 
catch (ArgumentException) {
    System.Console.WriteLine("Value is not a DateTime");
    return;
}

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

System.DateTime theDay = new System.DateTime(System.DateTime.
    get_Today().get_Year(), 7, 28);
int compareValue;
try {
    compareValue = theDay.CompareTo(System.DateTime.get_Today());
}
catch (ArgumentException exp) {
    System.Console.WriteLine("Value is not a DateTime");
    return;
}
if (compareValue < 0) {
    System.Console.WriteLine("{0:d} is in the past.", theDay);
}
else {
    if (compareValue == 0) {
        System.Console.WriteLine("{0:d} is today!", theDay);
    }
    else {
        if (compareValue == 1) {
            System.Console.WriteLine("Value is null");
        }
        // compareValue > 0 && compareValue != 1
        else {
            System.Console.WriteLine("{0:d} has not come yet.", 
                theDay);
        }
    } 
}

Windows 98, Windows Server 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

The Microsoft .NET Framework 3.0 is supported on Windows Vista, Microsoft Windows XP SP2, and Windows Server 2003 SP1.

.NET Framework

Supported in: 3.0, 2.0, 1.1, 1.0

.NET Compact Framework

Supported in: 2.0, 1.0

XNA Framework

Supported in: 1.0

Community Additions

ADD
Show:
© 2014 Microsoft