验证值是否为c#中的刻度

时间:2015-04-29 02:56:19

标签: c# .net date time

我有一个时间刻度(635655080937662522)我用C#创建并存储在数据库列中。如何验证此值是否为刻度而不是其他值?刻度线是否具有某种格式?

2 个答案:

答案 0 :(得分:3)

正如其他人所说,滴答只是一个数字,但有一些重要的差异,取决于蜱的来源。

  • 来自DateTimeDateTimeOffset的蜱每个100ns,范围从DateTime.MinValue.TicksDateTime.MaxValue.Ticks,即0到{{1 }}。请注意,这比3155378975999999999小得多。

  • 来自Int64.MaxValue的蜱每个也是100ns,但范围从TimeSpanTimeSpan.MinValue.Ticks,这与TimeSpan.MaxValue.Ticks的范围相同,这是Int64的范围。 -92233720368547758089223372036854775807

  • 来自Stopwatch(在System.Diagnostics名称空间中)的标记具有不同的大小,具体取决于系统的硬件功能。在现代硬件上,它们通常约为4ns。您可以使用TimeSpan代替Stopwatch.Elapsed.Ticks,或在计算中考虑Stopwatch.Frequency,将其调整为Stopwatch.ElaspedTicks个刻度。范围为0Int64.MaxValue

答案 1 :(得分:2)

勾选是一个数字,你可以做的确实没有更多的验证。

您可以检查实际时间是否在特定范围内,对您的案例有意义,但它是特定于应用程序的。