Leer en inglés

Compartir a través de


TimeZoneInfo.IsInvalidTime(DateTime) Método

Definición

Indica si una fecha y hora determinadas no son válidas.

C#
public bool IsInvalidTime (DateTime dateTime);

Parámetros

dateTime
DateTime

Valor de fecha y hora.

Devoluciones

Boolean

Es true si dateTime no es válida; en caso contrario, es false.

Ejemplos

En la zona horaria del Pacífico, el horario de verano comienza a las 2:00 a.m. el 2 de abril de 2006. El código siguiente pasa el tiempo a intervalos de un minuto desde las 1:59 A.M. el 2 de abril de 2006 a las 3:01 A.M. el 2 de abril de 2006, al IsInvalidTime método de un TimeZoneInfo objeto que representa la zona horaria del Pacífico. La salida de la consola indica que todas las veces desde las 2:00 A.M. el 2 de abril de 2006 a las 2:59 A.M. el 2 de abril de 2006, no son válidos.

C#
// 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));
}

Comentarios

Una hora no válida se encuentra dentro de un intervalo de horas para la zona horaria actual que no se puede asignar a la hora universal coordinada (UTC) debido a la aplicación de una regla de ajuste. Normalmente, las horas no válidas se producen cuando el tiempo avanza para el horario de verano. Consulte la sección Ejemplo para obtener una ilustración.

El valor de la Kind propiedad del dateTime parámetro afecta a si dateTime representa una hora no válida, como se muestra en la tabla siguiente.

Propiedad DateTime.Kind Objeto TimeZoneInfo (si procede) Comportamiento
DateTimeKind.Local TimeZoneInfo.Local Determina si la hora no es válida.
DateTimeKind.Local TimeZoneInfo.Utc o una zona horaria no local. dateTime Convierte en la hora del TimeZoneInfo objeto y devuelve false.
DateTimeKind.Unspecified No es aplicable. dateTime Se supone que es el tiempo del TimeZoneInfo objeto y determina si no es válido.
DateTimeKind.Utc No es aplicable. Devuelve false.

Se aplica a

Producto Versiones
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7
.NET Framework 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 2.0, 2.1
UWP 10.0

Consulte también