2010-07-23 17 views
5

Cómo convierto un DateTime de EST/EDT a GMT pero no sé dónde se ejecutará el código (zona horaria local desconocida) y también cuenta para el ahorro de tiempo ...convertir de EST/EDT a GMT

+0

pregunta relacionada - http://stackoverflow.com/questions/2532729/daylight-saving-time-and-timezone-best-practices – Oded

Respuesta

7

Quiere TimeZoneInfo.ConvertTimeToUtc(), que le permite pasar la información de la zona horaria de origen como parámetro. Por ejemplo:

TimeZoneInfo est = TimeZoneInfo.FindSystemTimeZoneById("Eastern Standard Time"); 
DateTime someDateTimeInUtc = TimeZoneInfo.ConvertTimeToUtc(someDateTime, est); 

I que esto va a manejar automáticamente el horario de verano, pero te quiero probarlo para estar seguro.

+0

lo siento decir, hora del este para que pudiera ser EST o EDT (Hora de verano) – Comma

+0

se colgó cuando utilicé el horario este – Comma

+0

Sí ... si mira los documentos, y luego busca en su registro (donde FindSystemTimeZoneInfoById() realiza su búsqueda), verá que la tecla "Eastern Standard Time" tiene un Subclave "Dynamic DST" ... entonces * con suerte * la llamada ConvertTimeToUtc() hará uso de ella según sea necesario. – JaredReisinger

0

Echa un vistazo a la clase TimeZoneInfo.

Cuestiones relacionadas