Compartir a través de


TimeZoneInfo.ConvertTime Método

Definición

Convierte una hora a la hora en una zona horaria determinada.

Sobrecargas

ConvertTime(DateTime, TimeZoneInfo)

Convierte una hora a la hora en una zona horaria determinada.

ConvertTime(DateTimeOffset, TimeZoneInfo)

Convierte una hora a la hora en una zona horaria determinada.

ConvertTime(DateTime, TimeZoneInfo, TimeZoneInfo)

Convierte una hora de una zona horaria a otra.

ConvertTime(DateTime, TimeZoneInfo)

Source:
TimeZoneInfo.cs
Source:
TimeZoneInfo.cs
Source:
TimeZoneInfo.cs

Convierte una hora a la hora en una zona horaria determinada.

public:
 static DateTime ConvertTime(DateTime dateTime, TimeZoneInfo ^ destinationTimeZone);
public static DateTime ConvertTime (DateTime dateTime, TimeZoneInfo destinationTimeZone);
static member ConvertTime : DateTime * TimeZoneInfo -> DateTime
Public Shared Function ConvertTime (dateTime As DateTime, destinationTimeZone As TimeZoneInfo) As DateTime

Parámetros

dateTime
DateTime

Fecha y hora que se va a convertir.

destinationTimeZone
TimeZoneInfo

Zona horaria a la que se va a convertir dateTime.

Devoluciones

Fecha y hora en la zona horaria de destino.

Excepciones

El valor del parámetro dateTime representa una hora no válida.

El valor del parámetro destinationTimeZone es null.

Ejemplos

En el ejemplo siguiente se convierte una matriz de valores de fecha y hora en horas de la zona horaria oriental de Estados Unidos y Canadá. Muestra que la zona horaria de origen depende de la propiedad DateTime.Kind del valor de DateTime de origen. También se muestra que el método ConvertTime toma en cuenta los ajustes de zona horaria, ya que se produce un ajuste de zona horaria en las zonas horarias de origen y destino a las 2:00 A.M. el 7 de noviembre de 2010.

using System;

public class Example
{
   public static void Main()
   {
      // Define times to be converted.
      DateTime[] times = { new DateTime(2010, 1, 1, 0, 1, 0), 
                           new DateTime(2010, 1, 1, 0, 1, 0, DateTimeKind.Utc), 
                           new DateTime(2010, 1, 1, 0, 1, 0, DateTimeKind.Local),                            
                           new DateTime(2010, 11, 6, 23, 30, 0),
                           new DateTime(2010, 11, 7, 2, 30, 0) };
                              
      // Retrieve the time zone for Eastern Standard Time (U.S. and Canada).
      TimeZoneInfo est; 
      try {
         est = TimeZoneInfo.FindSystemTimeZoneById("Eastern Standard Time");
      }
      catch (TimeZoneNotFoundException) {
         Console.WriteLine("Unable to retrieve the Eastern Standard time zone.");
         return;
      }
      catch (InvalidTimeZoneException) {
         Console.WriteLine("Unable to retrieve the Eastern Standard time zone.");
         return;
      }   

      // Display the current time zone name.
      Console.WriteLine("Local time zone: {0}\n", TimeZoneInfo.Local.DisplayName);
      
      // Convert each time in the array.
      foreach (DateTime timeToConvert in times)
      {
         DateTime targetTime = TimeZoneInfo.ConvertTime(timeToConvert, est);
         Console.WriteLine("Converted {0} {1} to {2}.", timeToConvert, 
                           timeToConvert.Kind, targetTime);
      }                        
   }
}
// The example displays the following output:
//    Local time zone: (GMT-08:00) Pacific Time (US & Canada)
//    
//    Converted 1/1/2010 12:01:00 AM Unspecified to 1/1/2010 3:01:00 AM.
//    Converted 1/1/2010 12:01:00 AM Utc to 12/31/2009 7:01:00 PM.
//    Converted 1/1/2010 12:01:00 AM Local to 1/1/2010 3:01:00 AM.
//    Converted 11/6/2010 11:30:00 PM Unspecified to 11/7/2010 1:30:00 AM.
//    Converted 11/7/2010 2:30:00 AM Unspecified to 11/7/2010 5:30:00 AM.
open System

// Define times to be converted.
let times = 
    [| DateTime(2010, 1, 1, 0, 1, 0)
       DateTime(2010, 1, 1, 0, 1, 0, DateTimeKind.Utc)
       DateTime(2010, 1, 1, 0, 1, 0, DateTimeKind.Local)
       DateTime(2010, 11, 6, 23, 30, 0)
       DateTime(2010, 11, 7, 2, 30, 0) |]
                        
// Retrieve the time zone for Eastern Standard Time (U.S. and Canada).
try
    let est = TimeZoneInfo.FindSystemTimeZoneById "Eastern Standard Time"

    // Display the current time zone name.
    printfn $"Local time zone: {TimeZoneInfo.Local.DisplayName}\n"

    // Convert each time in the array.
    for timeToConvert in times do
        let targetTime = TimeZoneInfo.ConvertTime(timeToConvert, est)
        printfn $"Converted {timeToConvert} {timeToConvert.Kind} to {targetTime}."
with
| :? TimeZoneNotFoundException ->
    printfn "Unable to retrieve the Eastern Standard time zone."
| :? InvalidTimeZoneException ->
    printfn "Unable to retrieve the Eastern Standard time zone."
// The example displays the following output:
//    Local time zone: (GMT-08:00) Pacific Time (US & Canada)
//    
//    Converted 1/1/2010 12:01:00 AM Unspecified to 1/1/2010 3:01:00 AM.
//    Converted 1/1/2010 12:01:00 AM Utc to 12/31/2009 7:01:00 PM.
//    Converted 1/1/2010 12:01:00 AM Local to 1/1/2010 3:01:00 AM.
//    Converted 11/6/2010 11:30:00 PM Unspecified to 11/7/2010 1:30:00 AM.
//    Converted 11/7/2010 2:30:00 AM Unspecified to 11/7/2010 5:30:00 AM.
Module Example
   Public Sub Main()
      ' Define times to be converted.
      Dim times() As Date = { #1/1/2010 12:01AM#, _
                              DateTime.SpecifyKind(#1/1/2010 12:01AM#, DateTimeKind.Utc), _
                              DateTime.SpecifyKind(#1/1/2010 12:01AM#, DateTimeKind.Local), _
                              #11/6/2010 11:30PM#, #11/7/2010 2:30AM# }
                              
      ' Retrieve the time zone for Eastern Standard Time (U.S. and Canada).
      Dim est As TimeZoneInfo 
      Try
         est = TimeZoneInfo.FindSystemTimeZoneById("Eastern Standard Time")
      Catch e As TimeZoneNotFoundException
         Console.WriteLine("Unable to retrieve the Eastern Standard time zone.")
         Exit Sub
      Catch e As InvalidTimeZoneException
         Console.WriteLine("Unable to retrieve the Eastern Standard time zone.")
         Exit Sub
      End Try   

      ' Display the current time zone name.
      Console.WriteLine("Local time zone: {0}", TimeZoneInfo.Local.DisplayName)
      Console.WriteLine()
      
      ' Convert each time in the array.
      For Each timeToConvert As Date In times
         Dim targetTime As Date = TimeZoneInfo.ConvertTime(timeToConvert, est)
         Console.WriteLine("Converted {0} {1} to {2}.", timeToConvert, _
                           timeToConvert.Kind, targetTime)
      Next                        
   End Sub
End Module
' The example displays the following output:
'    Local time zone: (GMT-08:00) Pacific Time (US & Canada)
'    
'    Converted 1/1/2010 12:01:00 AM Unspecified to 1/1/2010 3:01:00 AM.
'    Converted 1/1/2010 12:01:00 AM Utc to 12/31/2009 7:01:00 PM.
'    Converted 1/1/2010 12:01:00 AM Local to 1/1/2010 3:01:00 AM.
'    Converted 11/6/2010 11:30:00 PM Unspecified to 11/7/2010 1:30:00 AM.
'    Converted 11/7/2010 2:30:00 AM Unspecified to 11/7/2010 5:30:00 AM.

Comentarios

Al realizar la conversión, el método ConvertTime(DateTimeOffset, TimeZoneInfo) aplica las reglas de ajuste en vigor en la zona horaria destinationTimeZone.

Esta sobrecarga del método ConvertTime(DateTime, TimeZoneInfo) determina la zona horaria de origen del valor de la propiedad Kind del parámetro dateTime, como se muestra en la tabla siguiente.

Valor de la propiedad Kind Zona horaria de origen Comportamiento del método
DateTimeKind.Local Local Convierte la hora local en la hora en destinationTimeZone.
DateTimeKind.Utc Utc Convierte la hora universal coordinada (UTC) en la hora en destinationTimeZone.
DateTimeKind.Unspecified Se supone que es Local. Convierte la hora local en la hora en destinationTimeZone.

La propiedad Kind del valor devuelto DateTime se establece como se muestra en la tabla siguiente.

Condición Valor de propiedad Kind devuelto
El destinationTimeZone es TimeZoneInfo.Utc. DateTimeKind.Utc
El destinationTimeZone es TimeZoneInfo.Local. DateTimeKind.Local
Todos los demás valores de fecha y hora y zonas horarias de destino. DateTimeKind.Unspecified

Si el valor del parámetro dateTime es una hora local ambigua, se interpreta como una hora estándar. Si el parámetro dateTime es una hora local no válida, este método produce un ArgumentException.

Si la conversión de dateTime da como resultado un valor de fecha y hora anterior a DateTime.MinValue o posterior a DateTime.MaxValue, este método devuelve DateTime.MinValue o DateTime.MaxValue, respectivamente.

También puede convertir a o desde UTC llamando a los métodos ConvertTimeFromUtc y ConvertTimeToUtc.

Consulte también

Se aplica a

ConvertTime(DateTimeOffset, TimeZoneInfo)

Source:
TimeZoneInfo.cs
Source:
TimeZoneInfo.cs
Source:
TimeZoneInfo.cs

Convierte una hora a la hora en una zona horaria determinada.

public:
 static DateTimeOffset ConvertTime(DateTimeOffset dateTimeOffset, TimeZoneInfo ^ destinationTimeZone);
public static DateTimeOffset ConvertTime (DateTimeOffset dateTimeOffset, TimeZoneInfo destinationTimeZone);
static member ConvertTime : DateTimeOffset * TimeZoneInfo -> DateTimeOffset
Public Shared Function ConvertTime (dateTimeOffset As DateTimeOffset, destinationTimeZone As TimeZoneInfo) As DateTimeOffset

Parámetros

dateTimeOffset
DateTimeOffset

Fecha y hora que se va a convertir.

destinationTimeZone
TimeZoneInfo

Zona horaria a la que se va a convertir dateTimeOffset.

Devoluciones

Fecha y hora en la zona horaria de destino.

Excepciones

El valor del parámetro destinationTimeZone es null.

Ejemplos

En el ejemplo siguiente se convierte una matriz de valores de DateTimeOffset en horas de la zona horaria del Este de EE. UU. y Canadá. Ilustra que el método ConvertTime toma en cuenta los ajustes de zona horaria, ya que se produce un ajuste de zona horaria en las zonas horarias de origen y destino a las 2:00 A.M. el 7 de noviembre de 2010.

using System;

public class Example
{
   public static void Main()
   {
      // Define times to be converted.
      DateTime time1 = new DateTime(2010, 1, 1, 12, 1, 0);
      DateTime time2 = new DateTime(2010, 11, 6, 23, 30, 0);
      DateTimeOffset[] times = { new DateTimeOffset(time1, TimeZoneInfo.Local.GetUtcOffset(time1)),
                                 new DateTimeOffset(time1, TimeSpan.Zero),
                                 new DateTimeOffset(time2, TimeZoneInfo.Local.GetUtcOffset(time2)),
                                 new DateTimeOffset(time2.AddHours(3), TimeZoneInfo.Local.GetUtcOffset(time2.AddHours(3))) };
                              
      // Retrieve the time zone for Eastern Standard Time (U.S. and Canada).
      TimeZoneInfo est; 
      try {
         est = TimeZoneInfo.FindSystemTimeZoneById("Eastern Standard Time");
      }
      catch (TimeZoneNotFoundException) {
         Console.WriteLine("Unable to retrieve the Eastern Standard time zone.");
         return;
      }
      catch (InvalidTimeZoneException) {
         Console.WriteLine("Unable to retrieve the Eastern Standard time zone.");
         return;
      }   

      // Display the current time zone name.
      Console.WriteLine("Local time zone: {0}\n", TimeZoneInfo.Local.DisplayName);
      
      // Convert each time in the array.
      foreach (DateTimeOffset timeToConvert in times)
      {
         DateTimeOffset targetTime = TimeZoneInfo.ConvertTime(timeToConvert, est);
         Console.WriteLine("Converted {0} to {1}.", timeToConvert, targetTime);
      }                        
   }
}
// The example displays the following output:
//    Local time zone: (GMT-08:00) Pacific Time (US & Canada)
//    
//    Converted 1/1/2010 12:01:00 AM -08:00 to 1/1/2010 3:01:00 AM -05:00.
//    Converted 1/1/2010 12:01:00 AM +00:00 to 12/31/2009 7:01:00 PM -05:00.
//    Converted 11/6/2010 11:30:00 PM -07:00 to 11/7/2010 1:30:00 AM -05:00.
//    Converted 11/7/2010 2:30:00 AM -08:00 to 11/7/2010 5:30:00 AM -05:00.
open System

// Define times to be converted.
let time1 = DateTime(2010, 1, 1, 12, 1, 0)
let time2 = DateTime(2010, 11, 6, 23, 30, 0)
let times = 
    [| DateTimeOffset(time1, TimeZoneInfo.Local.GetUtcOffset time1)
       DateTimeOffset(time1, TimeSpan.Zero)
       DateTimeOffset(time2, TimeZoneInfo.Local.GetUtcOffset time2)
       DateTimeOffset(time2.AddHours 3, TimeZoneInfo.Local.GetUtcOffset(time2.AddHours 3)) |]
                        
// Retrieve the time zone for Eastern Standard Time (U.S. and Canada).
try
    let est = TimeZoneInfo.FindSystemTimeZoneById "Eastern Standard Time"

    // Display the current time zone name.
    printfn $"Local time zone: {TimeZoneInfo.Local.DisplayName}\n"

    // Convert each time in the array.
    for timeToConvert in times do
        let targetTime = TimeZoneInfo.ConvertTime(timeToConvert, est)
        printfn $"Converted {timeToConvert} to {targetTime}."
with
| :? TimeZoneNotFoundException ->
    printfn "Unable to retrieve the Eastern Standard time zone."
| :? InvalidTimeZoneException ->
    printfn "Unable to retrieve the Eastern Standard time zone."
// The example displays the following output:
//    Local time zone: (GMT-08:00) Pacific Time (US & Canada)
//    
//    Converted 1/1/2010 12:01:00 AM -08:00 to 1/1/2010 3:01:00 AM -05:00.
//    Converted 1/1/2010 12:01:00 AM +00:00 to 12/31/2009 7:01:00 PM -05:00.
//    Converted 11/6/2010 11:30:00 PM -07:00 to 11/7/2010 1:30:00 AM -05:00.
//    Converted 11/7/2010 2:30:00 AM -08:00 to 11/7/2010 5:30:00 AM -05:00.
Module Example
   Public Sub Main()
      ' Define times to be converted.
      Dim time1 As Date = #1/1/2010 12:01AM#
      Dim time2 As Date = #11/6/2010 11:30PM#
      Dim times() As DateTimeOffset = { New DateTimeOffset(time1, TimeZoneInfo.Local.GetUtcOffset(time1)), _
                                        New DateTimeOffset(time1, Timespan.Zero), _
                                        New DateTimeOffset(time2, TimeZoneInfo.Local.GetUtcOffset(time2)), _
                                        New DateTimeOffset(time2.AddHours(3), TimeZoneInfo.Local.GetUtcOffset(time2.AddHours(3))) }
                              
      ' Retrieve the time zone for Eastern Standard Time (U.S. and Canada).
      Dim est As TimeZoneInfo 
      Try
         est = TimeZoneInfo.FindSystemTimeZoneById("Eastern Standard Time")
      Catch e As TimeZoneNotFoundException
         Console.WriteLine("Unable to retrieve the Eastern Standard time zone.")
         Exit Sub
      Catch e As InvalidTimeZoneException
         Console.WriteLine("Unable to retrieve the Eastern Standard time zone.")
         Exit Sub
      End Try   

      ' Display the current time zone name.
      Console.WriteLine("Local time zone: {0}", TimeZoneInfo.Local.DisplayName)
      Console.WriteLine()
      
      ' Convert each time in the array.
      For Each timeToConvert As DateTimeOffset In times
         Dim targetTime As DateTimeOffset = TimeZoneInfo.ConvertTime(timeToConvert, est)
         Console.WriteLine("Converted {0} to {1}.", timeToConvert, targetTime)
      Next                        
   End Sub
End Module
' The example displays the following output:
'    Local time zone: (GMT-08:00) Pacific Time (US & Canada)
'    
'    Converted 1/1/2010 12:01:00 AM -08:00 to 1/1/2010 3:01:00 AM -05:00.
'    Converted 1/1/2010 12:01:00 AM +00:00 to 12/31/2009 7:01:00 PM -05:00.
'    Converted 11/6/2010 11:30:00 PM -07:00 to 11/7/2010 1:30:00 AM -05:00.
'    Converted 11/7/2010 2:30:00 AM -08:00 to 11/7/2010 5:30:00 AM -05:00.

Comentarios

Al realizar la conversión, el método ConvertTime(DateTimeOffset, TimeZoneInfo) aplica las reglas de ajuste en vigor en la zona horaria destinationTimeZone.

Esta sobrecarga difiere de las demás sobrecargas del método ConvertTime aceptando un valor de DateTimeOffset como primer parámetro. Esto identifica la fecha y hora como un desplazamiento de la hora universal coordinada (UTC) en lugar de como la fecha y hora en una zona horaria determinada. Como resultado, el parámetro dateTimeOffset no puede representar una hora ambigua o una hora no válida.

Al convertir el valor de dateTimeOffset a la hora de la zona horaria de destino, este método tiene en cuenta las reglas de ajuste en vigor en la zona horaria de destino.

Si la conversión de dateTimeOffset da como resultado un valor de fecha y hora anterior a DateTimeOffset.MinValue o posterior a DateTimeOffset.MaxValue, este método devuelve DateTimeOffset.MinValue o DateTimeOffset.MaxValue, respectivamente.

Consulte también

Se aplica a

ConvertTime(DateTime, TimeZoneInfo, TimeZoneInfo)

Source:
TimeZoneInfo.cs
Source:
TimeZoneInfo.cs
Source:
TimeZoneInfo.cs

Convierte una hora de una zona horaria a otra.

public:
 static DateTime ConvertTime(DateTime dateTime, TimeZoneInfo ^ sourceTimeZone, TimeZoneInfo ^ destinationTimeZone);
public static DateTime ConvertTime (DateTime dateTime, TimeZoneInfo sourceTimeZone, TimeZoneInfo destinationTimeZone);
static member ConvertTime : DateTime * TimeZoneInfo * TimeZoneInfo -> DateTime
Public Shared Function ConvertTime (dateTime As DateTime, sourceTimeZone As TimeZoneInfo, destinationTimeZone As TimeZoneInfo) As DateTime

Parámetros

dateTime
DateTime

Fecha y hora que se va a convertir.

sourceTimeZone
TimeZoneInfo

Zona horaria de dateTime.

destinationTimeZone
TimeZoneInfo

Zona horaria a la que se va a convertir dateTime.

Devoluciones

Fecha y hora en la zona horaria de destino que corresponde al parámetro dateTime de la zona horaria de origen.

Excepciones

La propiedad Kind del parámetro dateTime es Local, pero el parámetro sourceTimeZone no es igual Local.

-o-

La propiedad Kind del parámetro dateTime es Utc, pero el parámetro sourceTimeZone no es igual Utc.

-o-

El parámetro dateTime es una hora no válida (es decir, representa una hora que no existe debido a las reglas de ajuste de una zona horaria).

El parámetro sourceTimeZone es null.

-o-

El parámetro destinationTimeZone es null.

Ejemplos

En el ejemplo siguiente se muestra el uso del método ConvertTime(DateTime, TimeZoneInfo, TimeZoneInfo) para convertir de hora estándar hawaiana a hora local.

DateTime hwTime = new DateTime(2007, 02, 01, 08, 00, 00);
try
{
   TimeZoneInfo hwZone = TimeZoneInfo.FindSystemTimeZoneById("Hawaiian Standard Time");
   Console.WriteLine("{0} {1} is {2} local time.", 
           hwTime, 
           hwZone.IsDaylightSavingTime(hwTime) ? hwZone.DaylightName : hwZone.StandardName, 
           TimeZoneInfo.ConvertTime(hwTime, hwZone, TimeZoneInfo.Local));
}
catch (TimeZoneNotFoundException)
{
   Console.WriteLine("The registry does not define the Hawaiian Standard Time zone.");
}                           
catch (InvalidTimeZoneException)
{
   Console.WriteLine("Registry data on the Hawaiian Standard Time zone has been corrupted.");
}
let hwTime = DateTime(2007, 02, 01, 08, 00, 00)
try
    let hwZone = TimeZoneInfo.FindSystemTimeZoneById "Hawaiian Standard Time"
    printfn $"{hwTime} {if hwZone.IsDaylightSavingTime hwTime then hwZone.DaylightName else hwZone.StandardName} is {TimeZoneInfo.ConvertTime(hwTime, hwZone, TimeZoneInfo.Local)} local time." 
with
| :? TimeZoneNotFoundException ->
    printfn "The registry does not define the Hawaiian Standard Time zone."
| :? InvalidTimeZoneException ->
    printfn "Registry data on the Hawaiian Standard Time zone has been corrupted."
Dim hwTime As Date = #2/01/2007 8:00:00 AM#
Try
   Dim hwZone As TimeZoneInfo = TimeZoneInfo.FindSystemTimeZoneById("Hawaiian Standard Time")
   Console.WriteLine("{0} {1} is {2} local time.", _
                     hwTime, _
                     IIf(hwZone.IsDaylightSavingTime(hwTime), hwZone.DaylightName, hwZone.StandardName), _
                     TimeZoneInfo.ConvertTime(hwTime, hwZone, TimeZoneInfo.Local))
Catch e As TimeZoneNotFoundException
   Console.WriteLine("The registry does not define the Hawaiian Standard Time zone.")
Catch e As InvalidTimeZoneException
   Console.WriteLine("Registry data on the Hawaiian Standard Time zone has been corrupted.")
End Try

Comentarios

Al realizar la conversión, el método ConvertTime aplica las reglas de ajuste en vigor en la zona horaria destinationTimeZone.

El valor de la propiedad Kind del parámetro dateTime debe corresponder al parámetro sourceTimeZone, como se muestra en la tabla siguiente.

Valor DateTime.Kind valor sourceTimeZone Comportamiento del método
DateTimeKind.Utc Es igual a TimeZoneInfo.Utc. Convierte dateTime a la hora de la zona horaria de destino.
DateTimeKind.Utc No es igual a TimeZoneInfo.Utc. Produce un ArgumentException.
DateTimeKind.Local Es igual a TimeZoneInfo.Local. Convierte dateTime a la hora de la zona horaria de destino.
DateTimeKind.Local No es igual a TimeZoneInfo.Local. Produce un ArgumentException.
DateTimeKind.Unspecified Cualquier. Convierte dateTime a la hora de la zona horaria de destino.

También puede convertir a o desde la hora universal coordinada (UTC) llamando a los métodos ConvertTimeFromUtc y ConvertTimeToUtc.

La propiedad Kind del valor devuelto DateTime se establece como se muestra en la tabla siguiente.

Condición Valor de propiedad Kind devuelto
El argumento destinationTimeZone es TimeZoneInfo.Utc. DateTimeKind.Utc
El argumento destinationTimeZone es TimeZoneInfo.Local. DateTimeKind.Local
Todos los demás valores de fecha y hora, zonas horarias de origen y zonas horarias de destino. DateTimeKind.Unspecified

Si el valor del parámetro dateTime es una hora ambigua en la zona horaria de origen, se interpreta como una hora estándar. Si el parámetro dateTime es una hora no válida en la zona horaria de origen, este método produce un ArgumentException.

Si la conversión de dateTime da como resultado un valor de fecha y hora anterior a DateTime.MinValue o posterior a DateTime.MaxValue, este método devuelve DateTime.MinValue o DateTime.MaxValue, respectivamente.

El método ConvertTime(DateTime, TimeZoneInfo, TimeZoneInfo) produce una excepción de ArgumentException si la propiedad DateTime.Kind del argumento dateTime es DateTimeKind.Local, pero el argumento sourceTimeZone no es TimeZoneInfo.Local. Para determinar si la zona horaria de origen es la zona horaria local o la zona horaria universal, el método comprueba la igualdad de referencia en lugar de probar la igualdad de valores con el método Equals(TimeZoneInfo). Tenga en cuenta que TimeZoneInfo objetos que representan la zona horaria local y que se recuperan llamando al método FindSystemTimeZoneById no tienen igualdad referencial con TimeZoneInfo.Local. Además, TimeZoneInfo objetos que representan la zona horaria local o universal y que se recuperan iterando la colección devuelta por el método GetSystemTimeZones no tienen igualdad referencial con TimeZoneInfo.Local o TimeZoneInfo.Utc. Como alternativa, puede llamar al método ConvertTimeBySystemTimeZoneId(DateTime, String, String).

Consulte también

Se aplica a