Notre application actuelle stocke toutes les dates via le datetime du serveur. Je pense que nous devons mettre à jour toutes les valeurs datetime dans la base de données sur l'heure UTC.Conversion d'une application Web asp.net/sql en une zone de disponibilité
Maintenant, pour afficher ces dates à l'utilisateur, je sais que .Net 3.5 a des types de données qui sont spécifiques aux décalages de temps de date. Mais est-ce que quelqu'un voit quelque chose de mal à définir une variable d'application pour représenter le fuseau horaire souhaité pour le site, puis faire un dateadd avec ce décalage pour afficher les temps à l'utilisateur? Par exemple, le fuseau horaire de l'Est aurait une valeur de "-5".
J'ai mal compris - donc vous demandez si vous pouvez autoriser un décalage à vos valeurs datetime? Bien sûr, techniquement vous pouvez le faire, mais je ne le ferais pas, pour deux raisons: - si votre application ajoute un décalage, seule votre application (et vous) saura comment interpréter les données dans la base de données - il est facile de réparer vos données existantes – cdonner
Mes valeurs datetime actuelles devraient-elles être converties en UTCTime ou en quelque chose comme DateTimeOffset de Sql 2008, qui stocke le décalage avec la date? – user210132
Cela ne nécessiterait-il pas deux étapes pour afficher un datetime localisé dans le fuseau horaire d'un utilisateur (implicite ou explicite)? Vous devez d'abord convertir en UTC, puis dans le fuseau horaire de l'utilisateur? Je ne vois aucun avantage à le faire, mais je n'ai pas le contexte opérationnel complet. – cdonner