TimeZoneInfo.IsDaylightSavingTime Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Gibt an, ob ein angegebenes Datum und eine Zeit in den Bereich der Sommerzeit für die Zeitzone des aktuellen TimeZoneInfo-Objekts fallen.
Überlädt
IsDaylightSavingTime(DateTime) |
Gibt an, ob ein angegebenes Datum und eine Zeit in den Bereich der Sommerzeit für die Zeitzone des aktuellen TimeZoneInfo-Objekts fallen. |
IsDaylightSavingTime(DateTimeOffset) |
Gibt an, ob ein angegebenes Datum und eine Zeit in den Bereich der Sommerzeit für die Zeitzone des aktuellen TimeZoneInfo-Objekts fallen. |
IsDaylightSavingTime(DateTime)
- Quelle:
- TimeZoneInfo.cs
- Quelle:
- TimeZoneInfo.cs
- Quelle:
- TimeZoneInfo.cs
Gibt an, ob ein angegebenes Datum und eine Zeit in den Bereich der Sommerzeit für die Zeitzone des aktuellen TimeZoneInfo-Objekts fallen.
public:
bool IsDaylightSavingTime(DateTime dateTime);
public bool IsDaylightSavingTime (DateTime dateTime);
member this.IsDaylightSavingTime : DateTime -> bool
Public Function IsDaylightSavingTime (dateTime As DateTime) As Boolean
Parameter
- dateTime
- DateTime
Ein Datums- und Uhrzeitwert.
Gibt zurück
true
, wenn der dateTime
-Parameter eine Sommerzeit darstellt, andernfalls false
.
Ausnahmen
Beispiele
Im folgenden Beispiel wird eine Methode mit dem Namen DisplayDateWithTimeZoneName
definiert, die die TimeZoneInfo.IsDaylightSavingTime Methode verwendet, um zu bestimmen, ob der Standardzeitname einer Zeitzone oder der Name der Sommerzeit angezeigt werden soll.
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
Hinweise
Der Rückgabewert von TimeZoneInfo.IsDaylightSavingTime wird durch die Beziehung zwischen der Zeitzone, die durch das TimeZoneInfo -Objekt dargestellt wird, und der Kind -Eigenschaft des dateTime
Parameters beeinflusst, wie in der folgenden Tabelle dargestellt.
TimeZoneInfo-Objekt | DateTime.Kind-Eigenschaft | Ergebnis |
---|---|---|
TimeZoneInfo.Local | DateTimeKind.Local |
Bestimmt, ob dateTime Sommerzeit ist. |
TimeZoneInfo.Local | DateTimeKind.Utc |
dateTime Konvertiert von koordinierter Weltzeit (UTC) in Ortszeit und bestimmt, ob es sich um Sommerzeit handelt. |
TimeZoneInfo.Local | DateTimeKind.Unspecified |
Geht davon aus, dass die dateTime Ortszeit darstellt und bestimmt, ob es sich um Sommerzeit handelt. |
TimeZoneInfo.Utc |
DateTimeKind.Local , DateTimeKind.Unspecified oder DateTimeKind.Utc |
Gibt zurück false (UTC unterstützt keine Sommerzeit). |
Jedes andere TimeZoneInfo Objekt. | DateTimeKind.Local |
Konvertiert die Ortszeit in die entsprechende Zeit des TimeZoneInfo Objekts und bestimmt dann, ob es sich bei letzterem um die Sommerzeit handelt. |
Jedes andere TimeZoneInfo Objekt. | DateTimeKind.Utc |
Konvertiert UTC in die entsprechende Zeit des TimeZoneInfo Objekts und bestimmt dann, ob es sich bei letzterem um Sommerzeit handelt. |
Jedes andere TimeZoneInfo Objekt. | DateTimeKind.Unspecified |
Bestimmt, ob dateTime Sommerzeit ist. |
Wenn die vom Objekt dargestellte TimeZoneInfo Zeitzone keine Sommerzeit unterstützt, gibt die -Methode immer zurück false
. Eine Reihe von Zeitzonen, einschließlich Utc, beobachten keine Sommerzeit. Um zu bestimmen, ob eine Zeitzone Sommerzeit unterstützt, rufen Sie den Wert ihrer SupportsDaylightSavingTime Eigenschaft ab.
Wenn der dateTime
Parameter eine mehrdeutige Zeit in der Zeitzone des aktuellen Objekts angibt, interpretiert dateTime
die TimeZoneInfo.IsDaylightSavingTime Methode als Standardzeit und gibt zurückfalse
, wenn ihre Kind Eigenschaft oder DateTimeKind.UnspecifiedistDateTimeKind.Local. Wenn die Kind -Eigenschaft lautet DateTimeKind.Utc, wählt diese Methode die richtige mehrdeutige Zeit aus und gibt an, ob es sich um eine Sommerzeit handelt.
Da die TimeZoneInfo.IsDaylightSavingTime(DateTime) Methode für ein Datum und eine Uhrzeit zurückgeben false
kann, die nicht eindeutig sind (d. h. ein Datum und eine Uhrzeit, die entweder eine Standardzeit oder eine Sommerzeit in einer bestimmten Zeitzone darstellen können), kann die TimeZoneInfo.IsAmbiguousTime(DateTime) -Methode mit der IsDaylightSavingTime(DateTime) -Methode gekoppelt werden, um zu bestimmen, ob es sich bei einer Zeit um eine Sommerzeit handelt. Da es sich bei einer mehrdeutigen Zeit sowohl um eine Sommerzeit als auch um eine Standardzeit handelt, kann die IsAmbiguousTime(DateTime) Methode zuerst aufgerufen werden, um zu bestimmen, ob ein Datum und eine Uhrzeit eine Sommerzeit sein können. Wenn die Methode zurückgibt false
, kann die IsDaylightSavingTime(DateTime) -Methode aufgerufen werden, um zu bestimmen, ob es sich bei dem DateTime Wert um eine Sommerzeit handelt. Im folgenden Beispiel wird diese Technik veranschaulicht.
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).
Wenn der dateTime
-Parameter eine ungültige Zeit angibt, löst der Methodenaufruf ein aus ArgumentException , wenn der Wert der -Eigenschaft des dateTime
Kind Parameters ist DateTimeKind.Local. Andernfalls gibt die -Methode zurück false
.
Rufen Sie die TimeZoneInfo.IsDaylightSavingTime -Methode auf, um zu bestimmen, ob beim Anzeigen des Zeitzonennamens StandardName der Wert einer Zeitzone oder dessen DaylightName Wert verwendet werden soll. Eine Abbildung finden Sie im Abschnitt Beispiel.
Weitere Informationen
Gilt für:
IsDaylightSavingTime(DateTimeOffset)
- Quelle:
- TimeZoneInfo.cs
- Quelle:
- TimeZoneInfo.cs
- Quelle:
- TimeZoneInfo.cs
Gibt an, ob ein angegebenes Datum und eine Zeit in den Bereich der Sommerzeit für die Zeitzone des aktuellen TimeZoneInfo-Objekts fallen.
public:
bool IsDaylightSavingTime(DateTimeOffset dateTimeOffset);
public bool IsDaylightSavingTime (DateTimeOffset dateTimeOffset);
member this.IsDaylightSavingTime : DateTimeOffset -> bool
Public Function IsDaylightSavingTime (dateTimeOffset As DateTimeOffset) As Boolean
Parameter
- dateTimeOffset
- DateTimeOffset
Ein Datums- und Uhrzeitwert.
Gibt zurück
true
, wenn der dateTimeOffset
-Parameter eine Sommerzeit darstellt, andernfalls false
.
Hinweise
Der Rückgabewert von TimeZoneInfo.IsDaylightSavingTime wird durch die Beziehung zwischen der Zeitzone, die durch das TimeZoneInfo -Objekt dargestellt wird, und der Offset -Eigenschaft des dateTimeOffset
Parameters beeinflusst. Wenn dateTimeOffset
nicht dem Offset der aktuellen Zeitzone von koordinierter Weltzeit (UTC) entspricht, konvertiert die Methode diese Zeit in die Zeit in der aktuellen Zeitzone. Anschließend wird bestimmt, ob es sich bei diesem Datum und der Uhrzeit um eine Sommerzeit handelt.
Wenn die vom Objekt dargestellte TimeZoneInfo Zeitzone keine Sommerzeit unterstützt, gibt die -Methode immer zurück false
. Um zu bestimmen, ob eine Zeitzone Sommerzeit unterstützt, rufen Sie den Wert ihrer SupportsDaylightSavingTime Eigenschaft ab.