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 konkrétní 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á; false
v 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á čas v minutových intervalech od 1:59 do 1:59. 2. dubna 2006 do 3:01. 2. dubna 2006 k IsInvalidTime metodě objektu TimeZoneInfo , který představuje tichomořské časové pásmo. Výstup konzoly označuje, že všechny časy od 2:00 do M. 2. dubna 2006 do 2:59. dne 2. dubna 2006 jsou 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 mapovat na koordinovaný univerzální čas (UTC) kvůli použití pravidla úpravy. K neplatným časů obvykle dochází, když se čas posune dopředu pro letní čas. Obrázek najdete v části Příklad.
Hodnota Kind vlastnosti dateTime
parametru 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, jestli 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 | Neužívá se. | dateTime Předpokládá, že je čas objektu TimeZoneInfo a určuje, jestli je neplatný. |
DateTimeKind.Utc | Neužívá se. | Vrací objekt false . |