TimeZoneInfo.TransitionTime 结构

定义

提供有关特定时区中特定时间更改(例如从夏时制更改为标准时间,或者从标准时间更改为夏时制)的信息。

public: value class TimeZoneInfo::TransitionTime : IEquatable<TimeZoneInfo::TransitionTime>, System::Runtime::Serialization::IDeserializationCallback, System::Runtime::Serialization::ISerializable
public readonly struct TimeZoneInfo.TransitionTime : IEquatable<TimeZoneInfo.TransitionTime>, System.Runtime.Serialization.IDeserializationCallback, System.Runtime.Serialization.ISerializable
public struct TimeZoneInfo.TransitionTime : IEquatable<TimeZoneInfo.TransitionTime>, System.Runtime.Serialization.IDeserializationCallback, System.Runtime.Serialization.ISerializable
[System.Serializable]
public struct TimeZoneInfo.TransitionTime : IEquatable<TimeZoneInfo.TransitionTime>, System.Runtime.Serialization.IDeserializationCallback, System.Runtime.Serialization.ISerializable
type TimeZoneInfo.TransitionTime = struct
    interface IDeserializationCallback
    interface ISerializable
[<System.Serializable>]
type TimeZoneInfo.TransitionTime = struct
    interface ISerializable
    interface IDeserializationCallback
Public Structure TimeZoneInfo.TransitionTime
Implements IDeserializationCallback, IEquatable(Of TimeZoneInfo.TransitionTime), ISerializable
继承
TimeZoneInfo.TransitionTime
属性
实现

注解

可以使用 TimeZoneInfo.TransitionTime 结构来指示何时发生从标准时间到夏令时的转换,或从夏令时转换回标准时间的时间。 此结构支持固定日期规则和浮动日期规则。 对于在特定月份 ((例如 11 月 3 日凌晨 2:00) )发生的时间转换,请使用固定日期规则。 对特定月份中特定周的特定日期发生的时间转换使用浮动日期规则, (例如) 年 11 月第一个星期日的凌晨 2:00。

下表比较了固定日期转换和浮动日期转换中使用的属性:

Month Week 日期 时间
固定日期规则 Month 不可用 Day TimeOfDay
浮动日期规则 Month Week DayOfWeek TimeOfDay

对于固定日期和浮动日期转换, TimeOfDay 属性获取发生时间更改的时间。 对于从标准到夏时制的转换,这是时区的标准时间值。 对于从夏令时到标准时间的转换,这是时区的夏令时值。 此值 DateTime 的日期部分将被忽略;其年、月和日值必须始终等于 1。

注意

结构的实例是不可变的 TimeZoneInfo.TransitionTime 。 创建对象后,无法修改其值。

TimeZoneInfo.TransitionTime可以通过调用 static Visual Basic 中的 (Shared来创建对象,) CreateFixedDateRuleCreateFloatingDateRule方法分别创建固定或浮动日期规则。 然后,开始和结束 TimeZoneInfo.TransitionTime 对象作为参数提供给 CreateAdjustmentRule 方法,以创建包含此转换时间信息的新调整规则。

对象的 DaylightTransitionStartDaylightTransitionEnd 属性 TimeZoneInfo.AdjustmentRule 返回 对象 TimeZoneInfo.TransitionTime

属性

Day

获取发生时间更改的日期。

DayOfWeek

获取时间更改发生在星期几。

IsFixedDateRule

获取一个值,该值指示是在固定日期和时间(如 11 月 1 日)还是在浮动日期和时间(如 10 月的最后一个星期日)发生时间更改。

Month

获取发生时间更改的月份。

TimeOfDay

获取发生时间更改的小时、分钟和秒。

Week

获取时间更改发生在月中的第几个星期。

方法

CreateFixedDateRule(DateTime, Int32, Int32)

定义一个使用固定日期规则的日期更改(即,发生在特定月份的特定日期的时间更改)。

CreateFloatingDateRule(DateTime, Int32, Int32, DayOfWeek)

定义一个使用浮动日期规则的日期更改(即,发生在特定月份的特定星期的特定星期几的时间更改)。

Equals(Object)

确定是否一个对象具有与当前 TimeZoneInfo.TransitionTime 对象相同的值。

Equals(TimeZoneInfo+TransitionTime)

确定当前 TimeZoneInfo.TransitionTime 对象是否具有与第二个 TimeZoneInfo.TransitionTime 对象相同的值。

GetHashCode()

用作哈希算法的哈希函数和数据结构(如哈希表)。

运算符

Equality(TimeZoneInfo+TransitionTime, TimeZoneInfo+TransitionTime)

确定两个指定的 TimeZoneInfo.TransitionTime 对象是否相等。

Inequality(TimeZoneInfo+TransitionTime, TimeZoneInfo+TransitionTime)

确定两个指定的 TimeZoneInfo.TransitionTime 对象是否不相等。

显式接口实现

IDeserializationCallback.OnDeserialization(Object)

在对象的反序列化完成时运行。

ISerializable.GetObjectData(SerializationInfo, StreamingContext)

使用序列化 SerializationInfo 对象所需的数据填充此对象。

适用于