TimeZoneInfo.IsDaylightSavingTime Methode

Definitie

Geeft aan of een opgegeven datum en tijd valt binnen het bereik van zomertijd voor de tijdzone van het huidige TimeZoneInfo object.

Overloads

Name Description
IsDaylightSavingTime(DateTime)

Geeft aan of een opgegeven datum en tijd valt binnen het bereik van zomertijd voor de tijdzone van het huidige TimeZoneInfo object.

IsDaylightSavingTime(DateTimeOffset)

Geeft aan of een opgegeven datum en tijd valt binnen het bereik van zomertijd voor de tijdzone van het huidige TimeZoneInfo object.

IsDaylightSavingTime(DateTime)

Bron:
TimeZoneInfo.cs
Bron:
TimeZoneInfo.cs
Bron:
TimeZoneInfo.cs
Bron:
TimeZoneInfo.cs
Bron:
TimeZoneInfo.cs

Geeft aan of een opgegeven datum en tijd valt binnen het bereik van zomertijd voor de tijdzone van het huidige TimeZoneInfo object.

public:
 bool IsDaylightSavingTime(DateTime dateTime);
public bool IsDaylightSavingTime(DateTime dateTime);
member this.IsDaylightSavingTime : DateTime -> bool
Public Function IsDaylightSavingTime (dateTime As DateTime) As Boolean

Parameters

dateTime
DateTime

Een datum- en tijdwaarde.

Retouren

trueals de dateTime parameter een zomertijd is, anders. false

Uitzonderingen

De Kind eigenschap van de dateTime waarde is Local en dateTime is een ongeldig tijdstip.

Voorbeelden

In het volgende voorbeeld wordt een methode gedefinieerd die DisplayDateWithTimeZoneName gebruikmaakt van de TimeZoneInfo.IsDaylightSavingTime methode om te bepalen of de standaardtijdnaam of zomertijdnaam van een tijdzone moet worden weergegeven.

private void DisplayDateWithTimeZoneName(DateTime date1, TimeZoneInfo timeZone)
{
   Console.WriteLine("The time is {0:t} on {0:d} {1}", 
                     date1, 
                     timeZone.IsDaylightSavingTime(date1) ?
                         timeZone.DaylightName : timeZone.StandardName);   
}
// The example displays output similar to the following:
//    The time is 1:00 AM on 4/2/2006 Pacific Standard Time
let displayDateWithTimeZoneName (date1: DateTime) (timeZone: TimeZoneInfo) =
    printfn $"The time is {date1:t} on {date1:d} {if timeZone.IsDaylightSavingTime date1 then timeZone.DaylightName else timeZone.StandardName}" 
// The example displays output similar to the following:
//    The time is 1:00 AM on 4/2/2006 Pacific Standard Time
Private Sub DisplayDateWithTimeZoneName(date1 As Date, timeZone As TimeZoneInfo)
   Console.WriteLine("The time is {0:t} on {0:d} {1}", _
                     date1, _
                     IIf(timeZone.IsDaylightSavingTime(date1), _
                         timezone.DaylightName, timezone.StandardName))   
End Sub
' The example displays output similar to the following:
'    The time is 1:00 AM on 4/2/2006 Pacific Standard Time

Opmerkingen

De retourwaarde wordt TimeZoneInfo.IsDaylightSavingTime beïnvloed door de relatie tussen de tijdzone die wordt vertegenwoordigd door het TimeZoneInfo object en de Kind eigenschap van de dateTime parameter, zoals in de volgende tabel wordt weergegeven.

TimeZoneInfo-object Eigenschap DateTime.Kind Result
TimeZoneInfo.Local DateTimeKind.Local Bepaalt of dateTime zomertijd is.
TimeZoneInfo.Local DateTimeKind.Utc Converteert dateTime van Coordinated Universal Time (UTC) naar lokale tijd en bepaalt of het zomertijd is.
TimeZoneInfo.Local DateTimeKind.Unspecified Hiermee wordt ervan uitgegaan dat deze dateTime lokale tijd vertegenwoordigt en bepaalt of het zomertijdtijd is.
TimeZoneInfo.Utc DateTimeKind.Local, DateTimeKind.Unspecifiedof DateTimeKind.Utc Retourneert false (UTC biedt geen ondersteuning voor zomertijd).
Elk ander TimeZoneInfo object. DateTimeKind.Local Converteert de lokale tijd naar de equivalente tijd van het TimeZoneInfo object en bepaalt vervolgens of de laatste zomertijd is.
Elk ander TimeZoneInfo object. DateTimeKind.Utc Converteert UTC naar de equivalente tijd van het TimeZoneInfo object en bepaalt vervolgens of de laatste zomertijd zomertijd is.
Elk ander TimeZoneInfo object. DateTimeKind.Unspecified Bepaalt of dateTime zomertijd is.

Als de tijdzone die wordt vertegenwoordigd door het TimeZoneInfo object geen zomertijd ondersteunt, retourneert falsede methode altijd . Een aantal tijdzones, waaronder Utc, observeren geen zomertijd. Als u wilt bepalen of een tijdzone zomertijd ondersteunt, haalt u de waarde van de eigenschap op SupportsDaylightSavingTime .

Als de dateTime parameter een dubbelzinnige tijd opgeeft in de tijdzone van het huidige object, wordt TimeZoneInfo.IsDaylightSavingTime de dateTime methode geïnterpreteerd als standaardtijd en wordt geretourneerd false als de Kind eigenschap is DateTimeKind.Local of DateTimeKind.Unspecified. Als de Kind eigenschap is DateTimeKind.Utc, selecteert deze methode de juiste dubbelzinnige tijd en geeft u aan of het een zomertijd is.

Omdat de TimeZoneInfo.IsDaylightSavingTime(DateTime) methode kan retourneren false voor een datum en tijd die dubbelzinnig is (dat wil gezegd, een datum en tijd die een standaardtijd of zomertijd in een bepaalde tijdzone kan vertegenwoordigen), kan de TimeZoneInfo.IsAmbiguousTime(DateTime) methode worden gekoppeld aan de IsDaylightSavingTime(DateTime) methode om te bepalen of een tijd een zomertijd kan zijn. Omdat een dubbelzinnige tijd een tijd is die zowel een zomertijd als een standaardtijd kan zijn, kan de IsAmbiguousTime(DateTime) methode eerst worden aangeroepen om te bepalen of een datum en tijd een zomertijd kan zijn. Als de methode retourneert false, kan de IsDaylightSavingTime(DateTime) methode worden aangeroepen om te bepalen of de DateTime waarde een zomertijd is. In het volgende voorbeeld ziet u deze techniek.

DateTime unclearDate = new DateTime(2007, 11, 4, 1, 30, 0);
// Test if time is ambiguous.
Console.WriteLine("In the {0}, {1} is {2}ambiguous.", 
                  TimeZoneInfo.Local.DisplayName, 
                  unclearDate, 
                  TimeZoneInfo.Local.IsAmbiguousTime(unclearDate) ? "" : "not ");
// Test if time is DST.
Console.WriteLine("In the {0}, {1} is {2}daylight saving time.", 
                  TimeZoneInfo.Local.DisplayName, 
                  unclearDate, 
                  TimeZoneInfo.Local.IsDaylightSavingTime(unclearDate) ? "" : "not ");
Console.WriteLine();    
// Report time as DST if it is either ambiguous or DST.
if (TimeZoneInfo.Local.IsAmbiguousTime(unclearDate) || 
    TimeZoneInfo.Local.IsDaylightSavingTime(unclearDate))
    Console.WriteLine("{0} may be daylight saving time in {1}.", 
                      unclearDate, TimeZoneInfo.Local.DisplayName);  
// The example displays the following output:
//    In the (GMT-08:00) Pacific Time (US & Canada), 11/4/2007 1:30:00 AM is ambiguous.
//    In the (GMT-08:00) Pacific Time (US & Canada), 11/4/2007 1:30:00 AM is not daylight saving time.
//    
//    11/4/2007 1:30:00 AM may be daylight saving time in (GMT-08:00) Pacific Time (US & Canada).
let unclearDate = DateTime(2007, 11, 4, 1, 30, 0)
// Test if time is ambiguous.
printfn $"""In the {TimeZoneInfo.Local.DisplayName}, {unclearDate} is {if TimeZoneInfo.Local.IsAmbiguousTime unclearDate then "" else "not "}ambiguous."""
// Test if time is DST.
printfn $"""In the {TimeZoneInfo.Local.DisplayName}, {unclearDate} is {if TimeZoneInfo.Local.IsDaylightSavingTime unclearDate then "" else "not "}daylight saving time.
"""
// Report time as DST if it is either ambiguous or DST.
if TimeZoneInfo.Local.IsAmbiguousTime unclearDate || TimeZoneInfo.Local.IsDaylightSavingTime unclearDate then
    printfn $"{unclearDate} may be daylight saving time in {TimeZoneInfo.Local.DisplayName}."

// The example displays the following output:
//    In the (GMT-08:00) Pacific Time (US & Canada), 11/4/2007 1:30:00 AM is ambiguous.
//    In the (GMT-08:00) Pacific Time (US & Canada), 11/4/2007 1:30:00 AM is not daylight saving time.
//    
//    11/4/2007 1:30:00 AM may be daylight saving time in (GMT-08:00) Pacific Time (US & Canada).
Dim unclearDate As Date = #11/4/2007 1:30AM#
' Test if time is ambiguous.
Console.WriteLine("In the {0}, {1} is {2}ambiguous.", _ 
                  TimeZoneInfo.Local.DisplayName, _
                  unclearDate, _
                  IIf(TimeZoneInfo.Local.IsAmbiguousTime(unclearDate), "", "not "))
' Test if time is DST.
Console.WriteLine("In the {0}, {1} is {2}daylight saving time.", _ 
                  TimeZoneInfo.Local.DisplayName, _
                  unclearDate, _
                  IIf(TimeZoneInfo.Local.IsDaylightSavingTime(unclearDate), "", "not "))
Console.WriteLine()    
' Report time as DST if it is either ambiguous or DST.
If TimeZoneInfo.Local.IsAmbiguousTime(unclearDate) OrElse _ 
   TimeZoneInfo.Local.IsDaylightSavingTime(unclearDate) Then
    Console.WriteLine("{0} may be daylight saving time in {1}.", _ 
                      unclearDate, TimeZoneInfo.Local.DisplayName)                                           
End If
' The example displays the following output:
'    In the (GMT-08:00) Pacific Time (US & Canada), 11/4/2007 1:30:00 AM is ambiguous.
'    In the (GMT-08:00) Pacific Time (US & Canada), 11/4/2007 1:30:00 AM is not daylight saving time.
'    
'    11/4/2007 1:30:00 AM may be daylight saving time in (GMT-08:00) Pacific Time (US & Canada).

Als de dateTime parameter een ongeldig tijdstip opgeeft, genereert de methodeaanroep een ArgumentException als de waarde van de eigenschap van de dateTime parameter Kind is DateTimeKind.Local; anders retourneert falsede methode.

Roep de TimeZoneInfo.IsDaylightSavingTime methode aan om te bepalen of de waarde van een tijdzone StandardName of de waarde ervan DaylightName moet worden gebruikt bij het weergeven van de tijdzonenaam. Zie de sectie Voorbeeld voor een afbeelding.

Zie ook

Van toepassing op

IsDaylightSavingTime(DateTimeOffset)

Bron:
TimeZoneInfo.cs
Bron:
TimeZoneInfo.cs
Bron:
TimeZoneInfo.cs
Bron:
TimeZoneInfo.cs
Bron:
TimeZoneInfo.cs

Geeft aan of een opgegeven datum en tijd valt binnen het bereik van zomertijd voor de tijdzone van het huidige TimeZoneInfo object.

public:
 bool IsDaylightSavingTime(DateTimeOffset dateTimeOffset);
public bool IsDaylightSavingTime(DateTimeOffset dateTimeOffset);
member this.IsDaylightSavingTime : DateTimeOffset -> bool
Public Function IsDaylightSavingTime (dateTimeOffset As DateTimeOffset) As Boolean

Parameters

dateTimeOffset
DateTimeOffset

Een datum- en tijdwaarde.

Retouren

trueals de dateTimeOffset parameter een zomertijd is, anders. false

Opmerkingen

De retourwaarde wordt TimeZoneInfo.IsDaylightSavingTime beïnvloed door de relatie tussen de tijdzone die wordt vertegenwoordigd door het TimeZoneInfo object en de Offset eigenschap van de dateTimeOffset parameter. Als dateTimeOffset deze niet overeenkomt met de verschuiving van de huidige tijdzone ten opzichte van Coordinated Universal Time (UTC), converteert de methode die tijd naar de tijd in de huidige tijdzone. Vervolgens wordt bepaald of die datum en tijd een zomertijd zijn.

Als de tijdzone die wordt vertegenwoordigd door het TimeZoneInfo object geen zomertijd ondersteunt, retourneert falsede methode altijd . Als u wilt bepalen of een tijdzone zomertijd ondersteunt, haalt u de waarde van de eigenschap op SupportsDaylightSavingTime .

Zie ook

Van toepassing op