TimeZoneInfo.IsInvalidTime(DateTime) Méthode

Définition

Indique si une valeur de date et heure particulière n'est pas valide.

public:
 bool IsInvalidTime(DateTime dateTime);
public bool IsInvalidTime (DateTime dateTime);
member this.IsInvalidTime : DateTime -> bool
Public Function IsInvalidTime (dateTime As DateTime) As Boolean

Paramètres

dateTime
DateTime

Valeur de date et heure.

Retours

Boolean

true si dateTime n'est pas valide ; sinon, false.

Exemples

Dans le fuseau horaire du Pacifique, l’heure d’été commence à 2h00 A.M. le 2 avril 2006. Le code suivant passe le temps à intervalles d’une minute à partir de 1:59 A.M. le 2 avril 2006 à 3h01 A.M. le 2 avril 2006, à la IsInvalidTime méthode d’un TimeZoneInfo objet qui représente le fuseau horaire pacifique. La sortie de la console indique que toutes les fois à partir de 2:00 A.M. le 2 avril 2006 à 2:59 A.M. le 2 avril 2006, n’est pas valide.

// Specify DateTimeKind in Date constructor
DateTime baseTime = new DateTime(2007, 3, 11, 1, 59, 0, DateTimeKind.Unspecified);
DateTime newTime;

// Get Pacific Standard Time zone
TimeZoneInfo pstZone = TimeZoneInfo.FindSystemTimeZoneById("Pacific Standard Time");

// List possible invalid times for a 63-minute interval, from 1:59 AM to 3:01 AM
for (int ctr = 0; ctr < 63; ctr++)
{
   // Because of assignment, newTime.Kind is also DateTimeKind.Unspecified
   newTime = baseTime.AddMinutes(ctr);
   Console.WriteLine("{0} is invalid: {1}", newTime, pstZone.IsInvalidTime(newTime));
}
// Specify DateTimeKind in Date constructor
let baseTime = DateTime(2007, 3, 11, 1, 59, 0, DateTimeKind.Unspecified)

// Get Pacific Standard Time zone
let pstZone = TimeZoneInfo.FindSystemTimeZoneById "Pacific Standard Time"

// List possible invalid times for a 63-minute interval, from 1:59 AM to 3:01 AM
for i = 0 to 62 do
    // Because of assignment, newTime.Kind is also DateTimeKind.Unspecified
    let newTime = baseTime.AddMinutes i
    printfn $"{newTime} is invalid: {pstZone.IsInvalidTime newTime}"
' Specify DateTimeKind in Date constructor
Dim baseTime As New Date(2007, 3, 11, 1, 59, 0, DateTimeKind.Unspecified)
Dim newTime As Date

' Get Pacific Standard Time zone
Dim pstZone As TimeZoneInfo = TimeZoneInfo.FindSystemTimeZoneById("Pacific Standard Time")

' List possible invalid times for 63-minute interval, from 1:59 AM to 3:01 AM
For ctr As Integer = 0 To 62
   ' Because of assignment, newTime.Kind is also DateTimeKind.Unspecified
   newTime = baseTime.AddMinutes(ctr)
   Console.WriteLine("{0} is invalid: {1}", newTime, pstZone.IsInvalidTime(newTime))
Next

Remarques

Une heure non valide se situe dans un intervalle de temps pour le fuseau horaire actuel qui ne peut pas être mappé au temps universel coordonné (UTC) en raison de l’application d’une règle d’ajustement. En règle générale, des heures non valides se produisent lorsque le temps avance pour l’heure d’été. Consultez la section Exemple pour une illustration.

La valeur de la Kind propriété du dateTime paramètre affecte s’il dateTime s’agit d’un temps non valide, comme le montre le tableau suivant.

Propriété DateTime.Kind Objet TimeZoneInfo (le cas échéant) Comportement
DateTimeKind.Local TimeZoneInfo.Local Détermine si l’heure n’est pas valide.
DateTimeKind.Local TimeZoneInfo.Utc ou un fuseau horaire non local. dateTime Convertit en temps de l’objet TimeZoneInfo et retourne false.
DateTimeKind.Unspecified Non applicable. dateTime Suppose que le temps de l’objet TimeZoneInfo est et détermine s’il n’est pas valide.
DateTimeKind.Utc Non applicable. Retourne false.

S’applique à

Voir aussi