这个DateTime代码与DateTime.now有什么不同吗

本文关键字:DateTime 什么 now 代码 这个 | 更新日期: 2023-09-27 17:57:53

我在一些继承的遗留代码中遇到了以下方法。感觉它应该用一个简单的"return DateTime.Now"来替换able。然而,这似乎很明显,我不想做出改变,以防我错过了这段代码的一些隐藏意图。

public static DateTime GetTimeStamp() 
{
   return new DateTime(DateTime.Now.Ticks); 
}

我的猜测是,当时实现者错误地认为"DateTime.Now"返回了一个引用而不是一个新实例,但有人遇到过这种情况,或者知道它可以以这种方式实现的真正原因吗。

这个DateTime代码与DateTime.now有什么不同吗

它与DateTime.Now相同。从DateTime中获取tick并将其放入构造函数将获得相同的日期时间:

msdn=>DateTime(int64 ticks)

然而,您可能会失去DateTime的时区意识。现在:

The Kind property is initialized to Unspecified.
For applications in which portability of date and time data or a limited degree of time zone awareness is important, you can use the corresponding DateTimeOffset constructor.