这似乎是一个简单的问题,但实际上比看起来要难:
如何将指定时区的午夜时间转换为Utc时间(无论本地计算机的时区如何)?
一个例子:今天CET的午夜时间在UTC中是前一天的晚上11点。
我尝试了以下方法:
DateTime midnight = TimeZoneInfo.ConvertTime(DateTime.UtcNow, specifiedTimeZoneInfo).Date;
DateTime utcTime = midnight.ToUniversalTime();
问题在于,这段代码只有当运行代码的本地计算机的时区与TimeZoneInfo.ConvertTime中使用的时区相同时才有效。
如何做到不考虑本地计算机的时区呢?
12:00:00 AM UTC
,无论时区如何。如果这不是您要寻找的,请详细说明您要寻找什么。 - Reza Aghaei