timezoneinfo - Cómo convertir la hora UTC en Hora en cualquier otra zona horaria en C#
timezoneinfo c# (1)
¿Cambiar a .NET 3.5 está absolutamente fuera de cuestión? Haría tu vida mucho, mucho más fácil. De lo contrario, estás atrapado con las clases simples TimeZone y DaylightSavings, además de tener que buscar las zonas horarias conocidas usando P / Invoke.
William Stacey tiene una publicación en el blog con un código para hacer esto , pero no lo he probado, por lo que no puedo garantizar su precisión. (En mi experiencia, él suele ser bastante bueno :) No hay duda de que hay trozos de código similares si ese no te ayuda.
Creo que la API que está utilizando no tiene acceso a datos históricos, por cierto. En otras palabras, supondrá que el horario de verano siempre se activa el primer domingo de octubre (o cualquiera que sea la regla) en lugar de saber que la regla ha cambiado con el tiempo. TimeZoneInfo en .NET 3.5 admite datos históricos donde lo hace el sistema operativo.
Estoy trabajando en C # .net - .Net fx es 2.0, que no admite la conversión entre diferentes zonas horarias. He escrito un planificador basado en UTC pero está dando errores de 1 hora en los períodos DTS para Londres. Necesito alguna solución para poder calcular la hora correcta en cualquier zona horaria relativa a UTC con los ajustes de horario de verano correctos.