C# 验证值是否为c中的勾号#
我用C#创建了一个时间刻度(635655080937662522),并存储在数据库列中。如何验证此值是否为勾号而不是其他值?勾号是否有特定的格式?勾号是一个数字,您真的无法进行更多的验证C# 验证值是否为c中的勾号#,c#,.net,date,time,C#,.net,Date,Time,我用C#创建了一个时间刻度(635655080937662522),并存储在数据库列中。如何验证此值是否为勾号而不是其他值?勾号是否有特定的格式?勾号是一个数字,您真的无法进行更多的验证 您可以检查实际时间是否在对您的情况有意义的特定范围内,但它是特定于应用程序的。正如其他人所说,勾号只是一个数字,但根据勾号的来源,有一些重要的区别 DateTime或DateTimeOffset的刻度各为100ns,范围为DateTime.MinValue.Ticks到DateTime.MaxValue.Ti
您可以检查实际时间是否在对您的情况有意义的特定范围内,但它是特定于应用程序的。正如其他人所说,勾号只是一个数字,但根据勾号的来源,有一些重要的区别
或DateTime
的刻度各为100ns,范围为DateTimeOffset
到DateTime.MinValue.Ticks
,即DateTime.MaxValue.Ticks
到0
。请注意,这比3155378975999999
小得多Int64.MaxValue
的刻度也各为100ns,但范围为TimeSpan
到TimeSpan.MinValue.Ticks
,这与TimeSpan.MaxValue.Ticks
的范围相同,即Int64
到-9223372036854775808
9223372036854775807
(在秒表
命名空间中)的刻度大小不同,具体取决于系统的硬件功能。在现代硬件上,它们通常在4ns左右。您可以使用系统诊断
而不是Stopwatch.appeased.ticks
,或者在计算中考虑到时间间隔,将它们调整为Stopwatch.elaspeddicks
刻度。范围是TimeSpan
到0
Int64.MaxValue
DateTime
,并检查它是否在合理的日期范围内。然而,你应该问自己“为什么这是一个无效的数字,我能做些什么来防止它?”另请参见: