TimeZoneInfo.IsInvalidTime(DateTime) Metódus
Definíció
Fontos
Egyes információk olyan, kiadás előtti termékekre vonatkoznak, amelyek a kiadásig még jelentősen módosulhatnak. A Microsoft nem vállal kifejezett vagy törvényi garanciát az itt megjelenő információért.
Azt jelzi, hogy egy adott dátum és idő érvénytelen-e.
public:
bool IsInvalidTime(DateTime dateTime);
public bool IsInvalidTime(DateTime dateTime);
member this.IsInvalidTime : DateTime -> bool
Public Function IsInvalidTime (dateTime As DateTime) As Boolean
Paraméterek
- dateTime
- DateTime
Dátum- és időérték.
Válaszok
trueha dateTime érvénytelen; ellenkező esetben. false
Példák
A csendes-óceáni időzónában a nyári időszámítás 2006. április 2-án hajnali 2:00-kor kezdődik. Az alábbi kód egyperces időközönként, 2006. április 2-án 1:59-től 2006 IsInvalidTime . április 2-án 3:01-ig továbbítja az időt egy TimeZoneInfo csendes-óceáni időzónát képviselő objektum metódusának. A konzol kimenete azt jelzi, hogy 2006. április 2-án 02:00 órától 2006. április 2-án 2:59-ig minden alkalommal érvénytelen.
// 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
Megjegyzések
Az érvénytelen idő az aktuális időzóna időtartományán belül esik, amely a beállítási szabály alkalmazása miatt nem rendelhető az egyezményes világidőhöz (UTC). Általában érvénytelen időpontok akkor fordulnak elő, amikor az idő előrehalad a nyári időszámításhoz. Illusztrációért tekintse meg a Példa szakaszt.
A paraméter tulajdonságának Kind értéke befolyásolja, dateTime hogy érvénytelen időt jelöl-e dateTime az alábbi táblázat.
| DateTime.Kind tulajdonság | TimeZoneInfo objektum (ha van) | Magatartás |
|---|---|---|
| DateTimeKind.Local | TimeZoneInfo.Local | Meghatározza, hogy az idő érvénytelen-e. |
| DateTimeKind.Local | TimeZoneInfo.Utc vagy egy nem helyi időzóna. | Átalakítja dateTime az objektum idejére TimeZoneInfo , és visszaadja a függvényt false. |
| DateTimeKind.Unspecified | Nem alkalmazható. | Feltételezi dateTime , hogy az objektum ideje TimeZoneInfo , és meghatározza, hogy érvénytelen-e. |
| DateTimeKind.Utc | Nem alkalmazható. | Visszatér false. |