这些给了我不同的日期
DateTime.Now.ToUniversalTime().ToString(@"yyyy-MM-dd");
DateTime.Today.ToUniversalTime().ToString(@"yyyy-MM-dd");
为什么?我假设它与日期时间的“时间部分”有关,可能设置为 0-0-0。
该DateTime.Today
属性实际上返回DateTime.Now.Date
:它的时间段看起来像00:00.00000
。而DateTime.Now
时间段是这样的10:09.00000
。因此,当您转换ToUniversalTime
为时,它将取决于当前时间。
public static DateTime Today {
get {
DateTime now = DateTime.Now;
return now.Date;
}
}
因为 ToUniversalTime()。
来自MSDN
协调世界时 (UTC) 等于本地时间减去 UTC 偏移量。有关 UTC 偏移的更多信息,请参阅TimeZone.GetUtcOffset。转换还考虑了适用于当前 DateTime 对象表示的时间的夏令时规则。