DateTime.Today vs 日期时间.现在.

本文关键字:时间 现在 日期 vs Today DateTime | 更新日期: 2023-09-27 17:56:22

这些给了我不同的日期

DateTime.Now.ToUniversalTime().ToString(@"yyyy-MM-dd");
DateTime.Today.ToUniversalTime().ToString(@"yyyy-MM-dd");

为什么?我假设它与日期时间的"时间部分"有关,可能设置为 0-0-0。

DateTime.Today vs 日期时间.现在.

DateTime.Today属性实际上返回DateTime.Now.Date:它的时间段看起来像00:00.00000DateTime.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 对象所表示的时间的夏令时规则。