DateTimeOffset.Ticks 属性
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
获取计时周期数,此计时周期数表示时钟时间中当前 DateTimeOffset 对象的日期和时间。
public:
property long Ticks { long get(); };
public long Ticks { get; }
member this.Ticks : int64
Public ReadOnly Property Ticks As Long
属性值
DateTimeOffset 对象的时钟时间中的计时周期数。
示例
以下示例通过估计日期 2008 年 7 月 1 日 1:23:07 中的刻度数来初始化 DateTimeOffset 对象。 然后,它向控制台显示该日期所代表的日期和时钟周期数。
// Attempt to initialize date to number of ticks
// in July 1, 2008 1:23:07.
//
// There are 10,000,000 100-nanosecond intervals in a second
const long NSPerSecond = 10000000;
long ticks;
ticks = 7 * NSPerSecond; // Ticks in a 7 seconds
ticks += 23 * 60 * NSPerSecond; // Ticks in 23 minutes
ticks += 1 * 60 * 60 * NSPerSecond; // Ticks in 1 hour
ticks += 60 * 60 * 24 * NSPerSecond; // Ticks in 1 day
ticks += 181 * 60 * 60 * 24 * NSPerSecond; // Ticks in 6 months
ticks += 2007 * 60 * 60 * 24 * 365L * NSPerSecond; // Ticks in 2007 years
ticks += 486 * 60 * 60 * 24 * NSPerSecond; // Adjustment for leap years
DateTimeOffset dto = new DateTimeOffset(
ticks,
DateTimeOffset.Now.Offset);
Console.WriteLine("There are {0:n0} ticks in {1}.",
dto.Ticks,
dto.ToString());
// The example displays the following output:
// There are 633,504,721,870,000,000 ticks in 7/1/2008 1:23:07 AM -08:00.
// Attempt to initialize date to number of ticks
// in July 1, 2008 1:23:07.
//
// There are 10,000,000 100-nanosecond intervals in a second
let NSPerSecond = 10000000L
let ticks = 7L * NSPerSecond // Ticks in a 7 seconds
let ticks = ticks + 23L * 60L * NSPerSecond // Ticks in 23 minutes
let ticks = ticks + 1L * 60L * 60L * NSPerSecond // Ticks in 1 hour
let ticks = ticks + 60L * 60L * 24L * NSPerSecond // Ticks in 1 day
let ticks = ticks + 181L * 60L * 60L * 24L * NSPerSecond // Ticks in 6 months
let ticks = ticks + 2007L * 60L * 60L * 24L * 365L * NSPerSecond // Ticks in 2007 years
let ticks = ticks + 486L * 60L * 60L * 24L * NSPerSecond // Adjustment for leap years
let dto = DateTimeOffset(ticks, DateTimeOffset.Now.Offset)
printfn $"There are {ticks:n0} ticks in {dto}."
// The example displays the following output:
// There are 633,504,721,870,000,000 ticks in 7/1/2008 1:23:07 AM -08:00.
' Attempt to initialize date to number of ticks
' in July 1, 2008 1:23:07.
'
' There are 10,000,000 100-nanosecond intervals in a second
Const NSPerSecond As Long = 10000000
Dim ticks As Long
ticks = 7 * NSPerSecond ' Ticks in a 7 seconds
ticks += 23 * 60 * NSPerSecond ' Ticks in 23 minutes
ticks += 1 * 60 * 60 * NSPerSecond ' Ticks in 1 hour
ticks += 60 * 60 * 24 * NSPerSecond ' Ticks in 1 day
ticks += 181 * 60 * 60 * 24 * NSPerSecond ' Ticks in 6 months
ticks += 2007 * 60 * 60 * 24 * 365l * NSPerSecond ' Ticks in 2007 years
ticks += 486 * 60 * 60 * 24 * NSPerSecond ' Adjustment for leap years
Dim dto As DateTimeOffset = New DateTimeOffset( _
ticks, _
DateTimeOffset.Now.Offset)
Console.WriteLine("There are {0:n0} ticks in {1}.", _
dto.Ticks, _
dto.ToString())
' The example displays the following output:
' There are 633,504,721,870,000,000 ticks in 7/1/2008 1:23:07 AM -08:00.
注解
属性的值 Ticks 表示自 0001 年 1 月 1 日午夜 12:00:00 以来经过的 100 纳秒间隔数, () 的值 MinValue 。 它不包括按闰秒添加的刻度。 一纳秒是十亿分之一秒:一秒内有一千万个滴答声。 属性的值 Ticks 范围从 DateTimeOffset.MinValue.Ticks
到 DateTimeOffset.MaxValue.Ticks
。
可以使用构造函数重载将刻度数分配给 DateTimeOffset 对象 DateTimeOffset(Int64, TimeSpan) 。