TimeZoneInfo.IsInvalidTime(DateTime) Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Určuje, jestli je určité datum a čas neplatné.
public:
bool IsInvalidTime(DateTime dateTime);
public bool IsInvalidTime(DateTime dateTime);
member this.IsInvalidTime : DateTime -> bool
Public Function IsInvalidTime (dateTime As DateTime) As Boolean
Parametry
- dateTime
- DateTime
Hodnota data a času.
Návraty
true je-li dateTime neplatná; falsev opačném případě .
Příklady
V tichomořském časovém pásmu začíná letní čas v 2:00 2. dubna 2006. Následující kód předává čas v minutových intervalech od 1:59 do 2. dubna 2006 do 3:01 do 2. dubna 2006 do IsInvalidTime metody TimeZoneInfo objektu, který představuje tichomoří časové pásmo. Výstup konzoly označuje, že 2:00 do 2.59. dubna 2006 jsou všechny časy od 2. dubna 2006 do 2:59. dubna 2006 neplatné.
// Specify DateTimeKind in Date constructor
DateTime baseTime = new DateTime(2007, 3, 11, 1, 59, 0, DateTimeKind.Unspecified);
DateTime newTime;
// Get Pacific Standard Time zone
TimeZoneInfo pstZone = TimeZoneInfo.FindSystemTimeZoneById("Pacific Standard Time");
// List possible invalid times for a 63-minute interval, from 1:59 AM to 3:01 AM
for (int ctr = 0; ctr < 63; ctr++)
{
// Because of assignment, newTime.Kind is also DateTimeKind.Unspecified
newTime = baseTime.AddMinutes(ctr);
Console.WriteLine("{0} is invalid: {1}", newTime, pstZone.IsInvalidTime(newTime));
}
// Specify DateTimeKind in Date constructor
let baseTime = DateTime(2007, 3, 11, 1, 59, 0, DateTimeKind.Unspecified)
// Get Pacific Standard Time zone
let pstZone = TimeZoneInfo.FindSystemTimeZoneById "Pacific Standard Time"
// List possible invalid times for a 63-minute interval, from 1:59 AM to 3:01 AM
for i = 0 to 62 do
// Because of assignment, newTime.Kind is also DateTimeKind.Unspecified
let newTime = baseTime.AddMinutes i
printfn $"{newTime} is invalid: {pstZone.IsInvalidTime newTime}"
' Specify DateTimeKind in Date constructor
Dim baseTime As New Date(2007, 3, 11, 1, 59, 0, DateTimeKind.Unspecified)
Dim newTime As Date
' Get Pacific Standard Time zone
Dim pstZone As TimeZoneInfo = TimeZoneInfo.FindSystemTimeZoneById("Pacific Standard Time")
' List possible invalid times for 63-minute interval, from 1:59 AM to 3:01 AM
For ctr As Integer = 0 To 62
' Because of assignment, newTime.Kind is also DateTimeKind.Unspecified
newTime = baseTime.AddMinutes(ctr)
Console.WriteLine("{0} is invalid: {1}", newTime, pstZone.IsInvalidTime(newTime))
Next
Poznámky
Neplatný čas spadá do časového rozsahu aktuálního časového pásma, které nelze namapovat na koordinovaný univerzální čas (UTC) kvůli použití pravidla úpravy. Obvykle dochází k neplatným časů, když se čas posune dopředu pro letní čas. Obrázek najdete v části Příklad.
Hodnota Kind vlastnosti parametru dateTime ovlivňuje, zda dateTime představuje neplatný čas, jak ukazuje následující tabulka.
| DateTime.Kind – vlastnost | TimeZoneInfo – objekt (pokud je k dispozici) | Chování |
|---|---|---|
| DateTimeKind.Local | TimeZoneInfo.Local | Určuje, zda je čas neplatný. |
| DateTimeKind.Local | TimeZoneInfo.Utc nebo jiné než místní časové pásmo. |
dateTime Převede na čas objektu TimeZoneInfo a vrátí .false |
| DateTimeKind.Unspecified | Nelze použít. |
dateTime Předpokládá, že je čas objektu TimeZoneInfo a určuje, zda je neplatný. |
| DateTimeKind.Utc | Nelze použít. | Vrátí false. |