特定时区的 DateTime.Today

End*_*ono 7 c# date

我需要检查某个时区是否仍在指定日期内。类似于DateTime.Today == DateTime.Parse("2016-06-30")但对于某些时区。最好的方法是什么?

cur*_*ckt 7

您需要获取UTC Time、查找TimeZoneInfo并转换UTC time为您的TimeZoneInfo.

DateTime utcTime = DateTime.UtcNow;
TimeZoneInfo serverZone = TimeZoneInfo.FindSystemTimeZoneById(YourTimeZoneID);
DateTime currentDateTime = TimeZoneInfo.ConvertTimeFromUtc(utcTime, serverZone);
Run Code Online (Sandbox Code Playgroud)

  • 谢谢!但由于我需要的只是日期,所以这就是我所做的:`DateTime theDate = (TimeZoneInfo.ConvertTimeFromUtc(utcTime, serverZone)).Date;` (2认同)