TimeZoneInfo.ConvertTime Método

Definição

Converte uma hora para a hora de um determinado fuso horário.

Sobrecargas

Name Description
ConvertTime(DateTime, TimeZoneInfo)

Converte uma hora para a hora de um determinado fuso horário.

ConvertTime(DateTimeOffset, TimeZoneInfo)

Converte uma hora para a hora de um determinado fuso horário.

ConvertTime(DateTime, TimeZoneInfo, TimeZoneInfo)

Converte uma hora de um fuso horário para outro.

ConvertTime(DateTime, TimeZoneInfo)

Converte uma hora para a hora de um determinado fuso horário.

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

A data e a hora da conversão.

destinationTimeZone
TimeZoneInfo

O fuso horário para converter dateTime .

Devoluções

A data e hora no fuso horário do destino.

Exceções

O valor do dateTime parâmetro representa um tempo inválido.

O valor do destinationTimeZone parâmetro é null.

Exemplos

O exemplo seguinte converte um conjunto de valores de data e hora para horários no fuso horário do Leste dos EUA e Canadá. Mostra que o fuso horário da fonte depende da DateTime.Kind propriedade do valor da fonte DateTime . Ilustra também que o ConvertTime método tem em conta os ajustes de fusos horários, porque um ajuste de fuso horário ocorre tanto na origem como no de destino às 2:00 da manhã de 7 de novembro 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.

Observações

Ao realizar a conversão, o ConvertTime(DateTimeOffset, TimeZoneInfo) método aplica quaisquer regras de ajuste em vigor no destinationTimeZone fuso horário.

Esta sobrecarga do ConvertTime(DateTime, TimeZoneInfo) método determina o fuso horário de origem a partir do valor da dateTime propriedade do Kind parâmetro, como mostra a tabela seguinte.

Valor da propriedade Fuso horário de origem Comportamento do método
DateTimeKind.Local Local Converte a hora local para a hora em destinationTimeZone.
DateTimeKind.Utc Utc Converte o Tempo Universal Coordenado (UTC) para o tempo em destinationTimeZone.
DateTimeKind.Unspecified Presume-se que seja Local. Converte a hora local para a hora em destinationTimeZone.

A Kind propriedade do valor devolvido DateTime é definida conforme mostrado na tabela seguinte.

Condition Valor da propriedade em Tipo Devolvida
O destinationTimeZone é TimeZoneInfo.Utc. DateTimeKind.Utc
O destinationTimeZone é TimeZoneInfo.Local. DateTimeKind.Local
Todos os outros valores de data e hora e fusos horários de destino. DateTimeKind.Unspecified

Se o valor do dateTime parâmetro for uma hora local ambígua, é interpretado como uma hora padrão. Se o dateTime parâmetro for um tempo local inválido, este método gera um ArgumentException.

Se a conversão de dateTime resultar num valor de data e hora anteriores DateTime.MinValue ou posteriores a DateTime.MaxValue, este método devolve DateTime.MinValue ou DateTime.MaxValue, respetivamente.

Também pode converter para ou a partir do UTC chamando os ConvertTimeFromUtc métodos e.ConvertTimeToUtc

Ver também

Aplica-se a

ConvertTime(DateTimeOffset, TimeZoneInfo)

Converte uma hora para a hora de um determinado fuso horário.

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

A data e a hora da conversão.

destinationTimeZone
TimeZoneInfo

O fuso horário para converter dateTimeOffset .

Devoluções

A data e hora no fuso horário do destino.

Exceções

O valor do destinationTimeZone parâmetro é null.

Exemplos

O exemplo seguinte converte um conjunto de DateTimeOffset valores para horários no fuso horário do Leste dos EUA e Canadá. Ilustra que o ConvertTime método tem em conta os ajustes de fusos horários, pois ocorre um ajuste tanto no fuso horário de origem como no de destino às 2:00 da manhã de 7 de novembro 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.

Observações

Ao realizar a conversão, o ConvertTime(DateTimeOffset, TimeZoneInfo) método aplica quaisquer regras de ajuste em vigor no destinationTimeZone fuso horário.

Esta sobrecarga difere das outras sobrecargas do ConvertTime método por aceitar um DateTimeOffset valor como seu primeiro parâmetro. Isto identifica a data e hora como um deslocamento em relação ao Tempo Universal Coordenado (UTC) em vez de como a data e hora num fuso horário específico. Como resultado, o dateTimeOffset parâmetro não pode representar nem um tempo ambíguo nem um tempo inválido.

Ao converter o dateTimeOffset valor para a hora no fuso horário de destino, este método tem em conta quaisquer regras de ajuste em vigor no fuso horário de destino.

Se a conversão de dateTimeOffset resultar num valor de data e hora anteriores DateTimeOffset.MinValue ou posteriores a DateTimeOffset.MaxValue, este método devolve DateTimeOffset.MinValue ou DateTimeOffset.MaxValue, respetivamente.

Ver também

Aplica-se a

ConvertTime(DateTime, TimeZoneInfo, TimeZoneInfo)

Converte uma hora de um fuso horário para outro.

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

A data e a hora da conversão.

sourceTimeZone
TimeZoneInfo

O fuso horário de dateTime.

destinationTimeZone
TimeZoneInfo

O fuso horário para converter dateTime .

Devoluções

A data e hora no fuso horário de destino que correspondem ao dateTime parâmetro no fuso horário de origem.

Exceções

A Kind propriedade do dateTime parâmetro é Local, mas o sourceTimeZone parâmetro não é igual Locala .

-ou-

A Kind propriedade do dateTime parâmetro é Utc, mas o sourceTimeZone parâmetro não é igual Utca .

-ou-

O dateTime parâmetro é um tempo inválido (ou seja, representa um tempo que não existe devido às regras de ajuste de um fuso horário).

O sourceTimeZone parâmetro é null.

-ou-

O destinationTimeZone parâmetro é null.

Exemplos

O exemplo seguinte ilustra a utilização do ConvertTime(DateTime, TimeZoneInfo, TimeZoneInfo) método para converter do horário padrão do Havai para o horário 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

Observações

Ao realizar a conversão, o ConvertTime método aplica quaisquer regras de ajuste em vigor no destinationTimeZone fuso horário.

O valor da Kind propriedade do dateTime parâmetro deve corresponder ao sourceTimeZone parâmetro, como mostra a tabela seguinte.

valor DateTime.Kind Valor sourceTimeTimezone Comportamento do método
DateTimeKind.Utc É igual TimeZoneInfo.Utca . Converte dateTime para a hora do fuso horário de destino.
DateTimeKind.Utc Não é igual TimeZoneInfo.Utca . Lança um ArgumentException.
DateTimeKind.Local É igual TimeZoneInfo.Locala . Converte dateTime para a hora do fuso horário de destino.
DateTimeKind.Local Não é igual TimeZoneInfo.Locala . Lança um ArgumentException.
DateTimeKind.Unspecified Qualquer. Converte dateTime para a hora do fuso horário de destino.

Também pode converter para ou a partir do Tempo Universal Coordenado (UTC) chamando os ConvertTimeFromUtc métodos e.ConvertTimeToUtc

A Kind propriedade do valor devolvido DateTime é definida conforme mostrado na tabela seguinte.

Condition Valor da propriedade em Tipo Devolvida
O destinationTimeZone argumento é TimeZoneInfo.Utc. DateTimeKind.Utc
O destinationTimeZone argumento é TimeZoneInfo.Local. DateTimeKind.Local
Todos os outros valores de data e hora, fusos horários de origem e fusos horários de destino. DateTimeKind.Unspecified

Se o valor do dateTime parâmetro for uma hora ambígua no fuso horário de origem, é interpretado como uma hora padrão. Se o dateTime parâmetro for um tempo inválido no fuso horário de origem, este método gera um ArgumentException.

Se a conversão de dateTime resultar num valor de data e hora anteriores DateTime.MinValue ou posteriores a DateTime.MaxValue, este método devolve DateTime.MinValue ou DateTime.MaxValue, respetivamente.

O ConvertTime(DateTime, TimeZoneInfo, TimeZoneInfo) método lança uma ArgumentException exceção se a DateTime.Kind propriedade do dateTime argumento for DateTimeKind.Local mas o sourceTimeZone argumento não TimeZoneInfo.Localfor . Para determinar se o fuso horário de origem é o fuso horário local ou o fuso horário universal, o método testa a igualdade de referência em vez de testar a igualdade de valores com o Equals(TimeZoneInfo) método. Note que TimeZoneInfo objetos que representam o fuso horário local e que são recuperados ao chamar o FindSystemTimeZoneById método não têm igualdade referencial com TimeZoneInfo.Local. Além disso, TimeZoneInfo objetos que representam o fuso horário local ou universal e que são recuperados iterando a coleção devolvida pelo GetSystemTimeZones método não têm igualdade referencial com TimeZoneInfo.Local ou TimeZoneInfo.Utc. Em vez disso, pode chamar o ConvertTimeBySystemTimeZoneId(DateTime, String, String) sistema.

Ver também

Aplica-se a