DateTimeOffset.Compare(DateTimeOffset, DateTimeOffset) Metodo

Definizione

Confronta due oggetti DateTimeOffset e indica se il primo è precedente, uguale o successivo al secondo.

C#
public static int Compare (DateTimeOffset first, DateTimeOffset second);

Parametri

first
DateTimeOffset

Primo oggetto da confrontare.

second
DateTimeOffset

Secondo oggetto da confrontare.

Restituisce

Int32

Intero con segno che indica se il valore del parametro first è precedente, successivo o uguale al valore del parametro second, come illustrato nella tabella seguente.

Valore restituito Significato
Minore di zero first è precedente a second.
Zero first è uguale a second.
Maggiore di zero first è successivo a second.

Esempio

Nell'esempio seguente vengono illustrate le chiamate al Compare metodo per confrontare gli DateTimeOffset oggetti .

C#
using System;

public class CompareTimes
{
   private enum TimeComparison
   {
      Earlier = -1,
      Same = 0,
      Later = 1
   };

   public static void Main()
   {
      DateTimeOffset firstTime = new DateTimeOffset(2007, 9, 1, 6, 45, 0,
                                 new TimeSpan(-7, 0, 0));

      DateTimeOffset secondTime = firstTime;
      Console.WriteLine("Comparing {0} and {1}: {2}",
                        firstTime, secondTime,
                        (TimeComparison) DateTimeOffset.Compare(firstTime, secondTime));

      secondTime = new DateTimeOffset(2007, 9, 1, 6, 45, 0,
                       new TimeSpan(-6, 0, 0));
      Console.WriteLine("Comparing {0} and {1}: {2}",
                       firstTime, secondTime,
                       (TimeComparison) DateTimeOffset.Compare(firstTime, secondTime));

      secondTime = new DateTimeOffset(2007, 9, 1, 8, 45, 0,
                       new TimeSpan(-5, 0, 0));
      Console.WriteLine("Comparing {0} and {1}: {2}",
                       firstTime, secondTime,
                       (TimeComparison) DateTimeOffset.Compare(firstTime, secondTime));
      // The example displays the following output to the console:
      //       Comparing 9/1/2007 6:45:00 AM -07:00 and 9/1/2007 6:45:00 AM -07:00: Same
      //       Comparing 9/1/2007 6:45:00 AM -07:00 and 9/1/2007 6:45:00 AM -06:00: Later
      //       Comparing 9/1/2007 6:45:00 AM -07:00 and 9/1/2007 8:45:00 AM -05:00: Same
   }
}

Commenti

Durante l'esecuzione del confronto, il metodo converte sia i first parametri che l'ora second UTC (Coordinated Universal Time) prima di eseguire il confronto. Il metodo è equivalente al seguente:

C#
return DateTime.Compare(first.UtcDateTime, second.UtcDateTime);

In altre parole, il Compare metodo determina se due DateTimeOffset oggetti rappresentano un singolo punto nel tempo. Non confronta direttamente date e ore né offset.

Si applica a

Prodotto Versioni
.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
.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
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 2.0, 2.1
UWP 10.0