2012-01-31 18 views
22

¿Cuál es la diferencia entre un objeto DateTime y un objeto DateTimeOffset?Diferencia entre 'DateTime' y 'DateTimeOffset'

¿Y cuándo deberíamos usar cada uno?

En una aplicación web que puede cambiar el área del servidor, almacenando la fecha y la hora. ¿Cuál es mejor o hay alguna otra sugerencia?

+0

@ChrisLively así que gracias. –

+0

Vea también [esta respuesta] (http://stackoverflow.com/a/14268167) –

Respuesta

19

DateTimeOffset Representa un punto en el tiempo, generalmente expresado como una fecha y hora del día, en relación con el Tiempo Universal Coordinado (UTC) que proporciona un mayor grado de reconocimiento de zona horaria que la estructura DateTime. Véalo aquí: http://msdn.microsoft.com/en-us/library/bb546101.aspx.

+9

así que gracias. útil: D ¡No puedo entender por qué un grupo de personas votan por mis preguntas simples! ¡Soy nuevo y debería aprender más y más, y también debería preguntarle a mis probelems! –

+0

El único grado de "reconocimiento de zona horaria" que tiene es que almacena el desplazamiento UTC para un instante específico en el tiempo. No tiene otro conocimiento de las zonas horarias, incluida la zona horaria desde la que se creó el valor, por lo que su único uso real es con los datos históricos. Es bastante inútil para cualquier otra cosa. – Suncat2000

7

DateTimeOffset supera el inconveniente de DateTime. Se expresó como una fecha y hora del día, en relación con el Tiempo Universal Coordinado (UTC). Por ejemplo:

Dado 4/18/2013 11:00:00 AM significa absolutamente nada si no tiene un punto de referencia. Eso podría ser a las 11:00:00 a.m. en cualquier parte del mundo. DateTimeOffset contiene información sobre la zona horaria con la que está tratando, ¡lo que hace toda la diferencia en THE WORLD!

Para más detalles must read once

+0

La única diferencia es que almacena _sólo_ el desplazamiento UTC para el instante específico en el tiempo que representa DateTime. No almacena la zona horaria real, por lo que básicamente todo lo que puede hacer con ella es convertir entre su hora local relativa y UTC. Útil en algunas circunstancias, pero información bastante débil, de lo contrario. Lo que DateTimeOffset no es una clase DateTime que tenga en cuenta la zona horaria. – Suncat2000

Cuestiones relacionadas