string NewsID = string.Format("{0:yyyyMMddHHmmssffff}", DateTime.Now); 取到毫秒还是有相同的值。

怎么保证取到的值不一样
2025-04-27 08:25:53
推荐回答(4个)
回答1:

系统System的计时(DateTime)准确度几乎是一毫秒(又好像是为三百分之一秒),跟直接的CPU主频相差很大的。计时的方法不一样。所有取到毫秒有相同也不奇怪了,可考虑用其它方法如: GUID的Guid.NewGuid();

回答2:

用DateTime.Ticks,这是个长整数,应该不会一样的。

回答3:

用GUID呀,全世界唯一,呵呵

回答4:

string NewsID = string.Format(System.Guid.NewGuid().ToString("N") + "{0:yyyyMMddHHmmssffff}", DateTime.Now);
这样干,你看还能重复不?