2008-10-21 6 views

Répondre

1

Si vous utilisez des temps UTC vous ne devriez pas vous soucier de clients ou fuseaux horaires de la lumière du jour ... des économies (si elles ont établi une norme)

+0

Eh bien dans ce cas particulier, je convertis l'heure locale en UTC. Mais j'ai lu quelque part que les règles de l'heure d'été ont changé récemment. Sooo la fonction Date.ToUniversalTime() fonctionne toujours correctement. –

0

Vous avez vraiment pas besoin de vous soucier beaucoup avec .NET si vous utilisez UTC partout. Si vous êtes intéressé à voir ce genre de choses en action, vous pouvez consulter la classe TimeZoneInfo.

0

Je recommande de normaliser toutes les entrées datetime dans votre application et base de données à UTC. Ensuite, vous pouvez soit laisser les utilisateurs choisir une préférence de leur fuseau horaire, que vous stockez comme décalage (par exemple -5 pour l'heure de l'Est) ou utiliser les paramètres de localisation de la machine client lors de l'affichage de l'heure à l'utilisateur. N'essayez pas de déterminer DST par vous-même.

0

Cela diffère par client. Vous ne pouvez pas vraiment supposer les règles DST basées sur le fuseau horaire avec toutes les différentes règles dans le monde. Laissez-le à votre fournisseur CLR (Microsoft). Stick à UTC pour tous les événements (mais gardez à l'esprit que minuit dépend du temps, donc les dates sont trop)

0

Eh bien dans ce cas particulier, je convertis l'heure locale en UTC. Mais j'ai lu quelque part que les règles de l'heure d'été ont changé récemment. Sooo la fonction Date.ToUniversalTime() fonctionne toujours correctement. Fondamentalement les dates avant 2007 (quand les nouvelles règles sont entrées en vigueur) seraient converties correctement mais les dates après cela ne le seraient pas. Suis-je ici?

0

@Xardas

Je pense que les temps ont été mis à jour l'heure d'été dans un patch récent (comme il y a quelques mois). Si votre système est corrigé, vous n'avez pas à vous en préoccuper.

Questions connexes