这些给我不同的日期
DateTime.Now.ToUniversalTime().ToString(@"yyyy-MM-dd");
DateTime.Today.ToUniversalTime().ToString(@"yyyy-MM-dd");
为什么呢?我假设它与日期时间的“时间部分”有关,可能设置为0-0-0。
答案 0 :(得分:4)
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;
}
}
答案 1 :(得分:1)
由于ToUniversalTime()。
来自MSDN
协调世界时(UTC)等于本地时间减去UTC偏移。有关UTC偏移的更多信息,请参阅TimeZone.GetUtcOffset。转换还会考虑适用于当前DateTime对象所代表的时间的夏令时规则。