从服务器获取当前日期时间并将其转换为c#中的特定本地时间

时间:2018-04-30 08:02:34

标签: c# datetime timezone

您一直在多个论坛中处理和搜索信息,但无法解决我的问题。我正在处理需要在中部时间下午2点执行的任务,我想要做的是获取服务器的时区并将其从中部时间下午2点转换为服务器时间。例如,如果服务器时间在美国东部时间,那么时间将是下午3点,如果服务器时间是在PST时间将是下午12点,所以任何指导都将是欣赏它。

由于

1 个答案:

答案 0 :(得分:0)

通常,服务器设置为以UTC格式运行,这意味着您只需要在UI层中对用户时区进行一次转换(或从中)。如果您的服务器确实设置为非UTC时区,则需要转换为UTC并返回(只是为了使转换最简单,而不是最简单)。另外,请注意DST问题。

这是关于时区之间转换的官方网页:https://docs.microsoft.com/en-us/dotnet/standard/datetime/converting-between-time-zones

TimeZoneInfo easternZone =   
 TimeZoneInfo.FindSystemTimeZoneById(easternZoneId);
Console.WriteLine("The date and time are {0} UTC.",                  
    TimeZoneInfo.ConvertTimeToUtc(easternTime, easternZone));