TimeZoneInfo.IsAmbiguousTime Méthode

Définition

Détermine si une valeur de date et heure particulière pour un fuseau horaire particulier est ambiguë et s'il est possible de la mapper à deux heures ou plus du temps universel coordonné (UTC, Universal Time Coordinated).

Surcharges

IsAmbiguousTime(DateTime)

Détermine si une valeur de date et heure particulière pour un fuseau horaire particulier est ambiguë et s'il est possible de la mapper à deux heures ou plus du temps universel coordonné (UTC, Universal Time Coordinated).

IsAmbiguousTime(DateTimeOffset)

Détermine si une valeur de date et heure particulière pour un fuseau horaire particulier est ambiguë et s'il est possible de la mapper à deux heures ou plus du temps universel coordonné (UTC, Universal Time Coordinated).

IsAmbiguousTime(DateTime)

Source:
TimeZoneInfo.cs
Source:
TimeZoneInfo.cs
Source:
TimeZoneInfo.cs

Détermine si une valeur de date et heure particulière pour un fuseau horaire particulier est ambiguë et s'il est possible de la mapper à deux heures ou plus du temps universel coordonné (UTC, Universal Time Coordinated).

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

Paramètres

dateTime
DateTime

Valeur de date et heure.

Retours

true si le paramètre dateTime est ambigu ; sinon, false.

Exceptions

La propriété Kind de la valeur dateTime est Local et dateTime est une date/heure non valide.

Exemples

Dans le fuseau horaire du Pacifique, l’heure d’été se termine à 2 h 00 le 4 novembre 2007. L’exemple suivant passe l’heure à intervalles d’une minute, de 12 h 59 le 4 novembre 2007 à 2 h 01 le 4 novembre 2007, à la IsAmbiguousTime(DateTime) méthode d’un TimeZoneInfo objet qui représente le fuseau horaire pacifique. La sortie de la console indique que toutes les heures comprises entre 1 h 00 le 4 novembre 2007 et 13 h 59 le 4 novembre 2007 sont ambiguës.

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

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

   // List possible ambiguous times for 63-minute interval, from 12:59 AM to 2: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 ambiguous: {1}", newTime, pstZone.IsAmbiguousTime(newTime));
   }
// Specify DateTimeKind in Date constructor
let baseTime = DateTime(2007, 11, 4, 0, 59, 00, DateTimeKind.Unspecified)

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

// List possible ambiguous times for 63-minute interval, from 12:59 AM to 2: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 ambiguous: {pstZone.IsAmbiguousTime newTime}"
' Specify DateTimeKind in Date constructor
Dim baseTime As New Date(2007, 11, 4, 0, 59, 00, DateTimeKind.Unspecified)
Dim newTime As Date

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

' List possible ambiguous times for 63-minute interval, from 12:59 AM to 2: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 ambiguous: {1}", newTime, pstZone.IsAmbiguousTime(newTime))
Next

Remarques

Une heure ambiguë se situe dans une plage d’heures pour le fuseau horaire actuel. Cela signifie qu’il peut s’agir d’une heure standard ou d’une heure résultant de l’application d’une règle d’ajustement. En règle générale, les heures ambiguës se traduisent lorsque l’horloge est définie pour revenir à l’heure standard à partir de l’heure d’été. Pour obtenir une illustration, consultez la section Exemple.

Le temps universel coordonné (UTC) n’a pas d’heures ambiguës; ni les fuseaux horaires qui ne prennent pas en charge l’heure d’été. Par conséquent, ces fuseaux horaires n’ont pas de règles d’ajustement et les appels à la IsAmbiguousTime méthode retournent falsetoujours .

Pour les fuseaux horaires qui observent l’heure d’été, le comportement précis de cette méthode dépend de la relation entre la Kind propriété et l’objet TimeZoneInfo , comme le montre le tableau suivant.

Type d’objet TimeZoneInfo Valeur de la propriété kind Comportement
TimeZoneInfo.Local DateTimeKind.Local ou DateTimeKind.Unspecified Détermine si le dateTime paramètre est ambigu.
TimeZoneInfo.Local DateTimeKind.Utc dateTime Convertit en heure locale, puis détermine si cette heure est ambiguë.
TimeZoneInfo.Utc DateTimeKind.Utc ou DateTimeKind.Unspecified Retourne false.
TimeZoneInfo.Utc DateTimeKind.Local Si dateTime est ambigu, suppose qu’il s’agit d’une heure standard, la convertit en UTC et retourne false.
Tout autre fuseau horaire. DateTimeKind.Local ou DateTimeKind.Utc dateTime Convertit en heure dans le fuseau horaire spécifié, puis détermine si cette heure est ambiguë.
Tout autre fuseau horaire. DateTimeKind.Unspecified Détermine si dateTime est ambigu.

Voir aussi

S’applique à

IsAmbiguousTime(DateTimeOffset)

Source:
TimeZoneInfo.cs
Source:
TimeZoneInfo.cs
Source:
TimeZoneInfo.cs

Détermine si une valeur de date et heure particulière pour un fuseau horaire particulier est ambiguë et s'il est possible de la mapper à deux heures ou plus du temps universel coordonné (UTC, Universal Time Coordinated).

public:
 bool IsAmbiguousTime(DateTimeOffset dateTimeOffset);
public bool IsAmbiguousTime (DateTimeOffset dateTimeOffset);
member this.IsAmbiguousTime : DateTimeOffset -> bool
Public Function IsAmbiguousTime (dateTimeOffset As DateTimeOffset) As Boolean

Paramètres

dateTimeOffset
DateTimeOffset

Date et heure.

Retours

true si le paramètre dateTimeOffset est ambigu dans le fuseau horaire actuel ; sinon, false.

Remarques

Une heure ambiguë se situe dans une plage d’heures pour le fuseau horaire actuel. Cela signifie qu’il peut s’agir d’une heure standard ou d’une heure résultant de l’application d’une règle d’ajustement. En règle générale, les heures ambiguës se traduisent lorsque l’horloge est définie pour revenir à l’heure standard à partir de l’heure d’été. Le temps universel coordonné (UTC) n’a pas d’heures ambiguës; ni les fuseaux horaires qui ne prennent pas en charge l’heure d’été.

Le comportement précis de la méthode dépend de la relation entre la Offset propriété du dateTimeOffset paramètre et le fuseau horaire actuel. Si la valeur de la Offset propriété est un décalage possible par rapport à l’UTC du fuseau horaire actuel, la méthode détermine si cette date et cette heure sont ambiguës. Sinon, il convertit dateTimeOffset en heure dans le fuseau horaire actuel, puis détermine si cette date et cette heure sont ambiguës.

S’applique à