Diferencia entre la hora estándar UTC y GMT en .NET
En .NET, las siguientes declaraciones devuelven valores diferentes:
Response.Write(
TimeZoneInfo.ConvertTime(
DateTime.Parse("2010-07-01 5:30:00.000"),
TimeZoneInfo.FindSystemTimeZoneById("Pacific Standard Time"),
TimeZoneInfo.FindSystemTimeZoneById("GMT Standard Time"))
);
// displays 7/1/2010 1:30:00 PM
..y esto...
Response.Write(
TimeZoneInfo.ConvertTime(
DateTime.Parse("2010-07-01 5:30:00.000"),
TimeZoneInfo.FindSystemTimeZoneById("Pacific Standard Time"),
TimeZoneInfo.FindSystemTimeZoneById("UTC"))
);
// displays 7/1/2010 12:30:00 PM
¿Por qué es esto? Pensé que la hora estándar UTC y GMT son equivalentes.
Actualizar
Después de más pruebas, encuentro que lo siguienteAparecer para ser equivalente:
"UTC"
"Meridiano de Greenwich"
"Hora estándar de Marruecos"
Mientras que, lo siguiente es diferente durante los meses de verano:
"Hora estándar GMT"
Quizás mi pregunta debería ser, ¿por qué son diferentes la "hora media de Greenwich" y la "hora estándar GMT"?
Fin de actualización