DateTimeOffset.Compare(DateTimeOffset, DateTimeOffset) Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Compare deux objets DateTimeOffset et indique si le premier est antérieur, égal ou ultérieur au second.
public:
static int Compare(DateTimeOffset first, DateTimeOffset second);
public static int Compare (DateTimeOffset first, DateTimeOffset second);
static member Compare : DateTimeOffset * DateTimeOffset -> int
Public Shared Function Compare (first As DateTimeOffset, second As DateTimeOffset) As Integer
Paramètres
- first
- DateTimeOffset
Premier objet à comparer.
- second
- DateTimeOffset
Deuxième objet à comparer.
Retours
Entier signé indiquant si la valeur du paramètre first
est antérieure, ultérieure ou égale à la valeur du paramètre second
, comme l'indique le tableau suivant.
Valeur retournée | Signification |
---|---|
Inférieure à zéro | first est antérieur à second .
|
Zéro | first est égal à second .
|
Supérieure à zéro | first est ultérieur à second .
|
Exemples
L’exemple suivant illustre les appels à la Compare méthode pour comparer DateTimeOffset des objets.
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
}
}
open System
type TimeComparison =
| Earlier = -1
| Same = 0
| Later = 1
let firstTime = DateTimeOffset(2007, 9, 1, 6, 45, 0, TimeSpan(-7, 0, 0))
let secondTime = firstTime
printfn $"Comparing {firstTime} and {secondTime}: {DateTimeOffset.Compare(firstTime, secondTime) |> enum<TimeComparison>}"
let thirdTime = DateTimeOffset(2007, 9, 1, 6, 45, 0, TimeSpan(-6, 0, 0))
printfn $"Comparing {firstTime} and {thirdTime}: {DateTimeOffset.Compare(firstTime, thirdTime) |> enum<TimeComparison>}"
let fourthTime = DateTimeOffset(2007, 9, 1, 8, 45, 0, TimeSpan(-5, 0, 0))
printfn $"Comparing {firstTime} and {fourthTime}: {DateTimeOffset.Compare(firstTime, fourthTime) |> enum<TimeComparison>}"
// 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
Module CompareTimes
Private Enum TimeComparison As Integer
Earlier = -1
Same = 0
Later = 1
End Enum
Public Sub Main()
Dim firstTime As New DateTimeOffset(#09/01/2007 6:45:00AM#, _
New TimeSpan(-7, 0, 0))
Dim secondTime As DateTimeOffset = firstTime
Console.WriteLine("Comparing {0} and {1}: {2}", _
firstTime, secondTime, _
CType(DateTimeOffset.Compare(firstTime, secondTime), _
TimeComparison))
secondTime = New DateTimeOffset(#09/01/2007 6:45:00AM#, _
New TimeSpan(-6, 0, 0))
Console.WriteLine("Comparing {0} and {1}: {2}", _
firstTime, secondTime, _
CType(DateTimeOffset.Compare(firstTime, secondTime), _
TimeComparison))
secondTime = New DateTimeOffset(#09/01/2007 8:45:00AM#, _
New TimeSpan(-5, 0, 0))
Console.WriteLine("Comparing {0} and {1}: {2}", _
firstTime, secondTime, _
CType(DateTimeOffset.Compare(firstTime, secondTime), _
TimeComparison))
' 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
End Sub
End Module
Remarques
Lors de l’exécution de la comparaison, la méthode convertit à la fois les first
paramètres en second
temps universel coordonné (UTC) avant d’effectuer la comparaison. La méthode équivaut à ce qui suit :
return DateTime.Compare(first.UtcDateTime, second.UtcDateTime);
DateTime.Compare(first.UtcDateTime, second.UtcDateTime)
Return DateTime.Compare(first.UtcDateTime, second.UtcDateTime)
En d’autres termes, la Compare méthode détermine si deux DateTimeOffset objets représentent un point unique dans le temps. Il compare directement les dates et les heures ni les décalages.