Exporter (0) Imprimer
Développer tout
Cet article a fait l'objet d'une traduction automatique. Déplacez votre pointeur sur les phrases de l'article pour voir la version originale de ce texte. Informations supplémentaires.
Traduction
Source

TimeZoneInfo.IsAmbiguousTime, méthode (DateTime)

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

Espace de noms :  System
Assembly :  mscorlib (dans mscorlib.dll)

public bool IsAmbiguousTime(
	DateTime dateTime
)

Paramètres

dateTime
Type : System.DateTime
Valeur de date et d'heure.

Valeur de retour

Type : System.Boolean
true si le paramètre dateTime est ambigu ; sinon, false.

ExceptionCondition
ArgumentException

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

Une heure ambiguë se trouve dans une plage d'heures pour le fuseau horaire actuel. Cela signifie qu'il peut s'agir d'une heure d'hiver ou d'une heure qui résulte de l'application d'une règle d'ajustement. En général, des heures ambiguës sont générées lorsque l'horloge est configurée pour retourner à l'heure d'hiver à partir de l'heure d'été. Consultez la section Exemple pour obtenir une illustration.

Le temps universel (UTC, Universal Time Coordinated) ne comporte aucune heure ambiguë ; il en va de même pour les fuseaux horaires qui ne prennent pas en charge l'heure d'été. Par conséquent, ces fuseaux horaires ne comportent pas toujours de règles d'ajustement et les appels à la méthode IsAmbiguousTime retournent toujours false.

Pour les fuseaux horaires qui respectent l'heure d'été, le comportement précis de cette méthode dépend de la relation entre la propriété Kind et l'objet TimeZoneInfo, comme indiqué dans le tableau ci-dessous.

Type d'objet TimeZoneInfo

Valeur de la propriété Kind

Comportement

TimeZoneInfo.Local

DateTimeKind.Local ou DateTimeKind.Unspecified

Détermine si le paramètre dateTime est ambigu.

TimeZoneInfo.Local

DateTimeKind.Utc

Convertit dateTime 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, le convertit en UTC et retourne false.

Tout autre fuseau horaire.

DateTimeKind.Local ou DateTimeKind.Utc

Convertit dateTime en heure du fuseau horaire spécifié, puis détermine si cette heure est ambiguë.

Tout autre fuseau horaire.

DateTimeKind.Unspecified

Détermine si dateTime est ambigu.

Remarques à l'attention des appelants

Sur les systèmes Windows XP, cette méthode applique uniquement la règle d'ajustement actuelle si l'instance actuelle est TimeZoneInfo.Local. Par conséquent, la méthode ne peut pas signaler correctement si dateTime est une heure ambiguë pour les périodes avant que la règle d'ajustement actuelle ne soit effective. Pour plus d'informations, consultez la section Appelants dans la propriété Local.

Dans la zone Pacifique standard, l'heure d'été finit à 2:00 du matin le 4 Novembre 2007. L'exemple suivant passe le temps à intervalles d'une minute comprises entre 0h59 du matin le 4 novembre 2007, à 2h01 du matin le 4 novembre 2007, à la méthode IsAmbiguousTime(DateTime) d'un objet TimeZoneInfo qui représente le fuseau horaire Pacifique. La sortie de console indique que toutes les heures comprises entre 1h et 1h59 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));
}


.NET Framework

Pris en charge dans : 4.5.2, 4.5.1, 4.5, 4, 3.5

.NET Framework Client Profile

Pris en charge dans : 4, 3.5 SP1

Bibliothèque de classes portable

Pris en charge dans : Bibliothèque de classes portable

.NET pour les applications du Windows Store

Pris en charge dans : Windows 8

.NET pour les applications Windows Phone

Pris en charge dans : Windows Phone 8, Silverlight 8.1

Windows Phone 8.1, Windows Phone 8, Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (rôle principal du serveur non pris en charge), Windows Server 2008 R2 (rôle principal du serveur pris en charge avec SP1 ou version ultérieure ; Itanium non pris en charge)

Le .NET Framework ne prend pas en charge toutes les versions de chaque plateforme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise du .NET Framework.

Ajouts de la communauté

AJOUTER
Afficher:
© 2015 Microsoft