Sdílet prostřednictvím


TimeZoneInfo.ConvertTime Metoda

Definice

Převede čas na čas v určitém časovém pásmu.

Přetížení

ConvertTime(DateTime, TimeZoneInfo)

Převede čas na čas v určitém časovém pásmu.

ConvertTime(DateTimeOffset, TimeZoneInfo)

Převede čas na čas v určitém časovém pásmu.

ConvertTime(DateTime, TimeZoneInfo, TimeZoneInfo)

Převede čas z jednoho časového pásma na jiné.

ConvertTime(DateTime, TimeZoneInfo)

Zdroj:
TimeZoneInfo.cs
Zdroj:
TimeZoneInfo.cs
Zdroj:
TimeZoneInfo.cs

Převede čas na čas v určitém časovém pásmu.

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

Parametry

dateTime
DateTime

Datum a čas, které chcete převést.

destinationTimeZone
TimeZoneInfo

Časové pásmo, na které chcete převést dateTime.

Návraty

Datum a čas v cílovém časovém pásmu.

Výjimky

Hodnota parametru dateTime představuje neplatný čas.

Hodnota parametru destinationTimeZone je null.

Příklady

Následující příklad převede pole hodnot data a času na časy ve východním časovém pásmu USA a Kanady. Ukazuje, že zdrojové časové pásmo závisí na vlastnosti DateTime.Kind zdrojové DateTime hodnoty. Ukazuje také, že metoda ConvertTime bere v úvahu úpravy časového pásma, protože úprava časového pásma probíhá ve zdrojovém i cílovém časovém pásmu v 7. listopadu 2010 ve 2:00.

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.

Poznámky

Při provádění převodu použije metoda ConvertTime(DateTimeOffset, TimeZoneInfo) všechna pravidla úpravy platná v destinationTimeZone časovém pásmu.

Toto přetížení ConvertTime(DateTime, TimeZoneInfo) metoda určuje zdrojové časové pásmo z hodnoty dateTime parametru Kind vlastnost, jak ukazuje následující tabulka.

Hodnota vlastnosti Kind Časové pásmo zdroje Chování metody
DateTimeKind.Local Local Převede místní čas na čas v destinationTimeZone.
DateTimeKind.Utc Utc Převede koordinovaný univerzální čas (UTC) na čas v destinationTimeZone.
DateTimeKind.Unspecified Předpokládá se, že Local. Převede místní čas na čas v destinationTimeZone.

Vlastnost Kind vrácené hodnoty DateTime je nastavená, jak je znázorněno v následující tabulce.

Podmínka Vrácená hodnota vlastnosti Kind
destinationTimeZone je TimeZoneInfo.Utc. DateTimeKind.Utc
destinationTimeZone je TimeZoneInfo.Local. DateTimeKind.Local
Všechny ostatní hodnoty data a času a cílové časové pásmo. DateTimeKind.Unspecified

Pokud je hodnota parametru dateTime nejednoznačným místním časem, interpretuje se jako standardní čas. Pokud je parametr dateTime neplatným místním časem, tato metoda vyvolá ArgumentException.

Pokud výsledkem převodu dateTime je hodnota data a času, která je dřívější než DateTime.MinValue nebo novější než DateTime.MaxValue, vrátí tato metoda DateTime.MinValue nebo DateTime.MaxValue, v uvedeném pořadí.

Můžete také převést na nebo z UTC voláním ConvertTimeFromUtc a ConvertTimeToUtc metod.

Viz také

Platí pro

ConvertTime(DateTimeOffset, TimeZoneInfo)

Zdroj:
TimeZoneInfo.cs
Zdroj:
TimeZoneInfo.cs
Zdroj:
TimeZoneInfo.cs

Převede čas na čas v určitém časovém pásmu.

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

Parametry

dateTimeOffset
DateTimeOffset

Datum a čas, které chcete převést.

destinationTimeZone
TimeZoneInfo

Časové pásmo, na které chcete převést dateTimeOffset.

Návraty

Datum a čas v cílovém časovém pásmu.

Výjimky

Hodnota parametru destinationTimeZone je null.

Příklady

Následující příklad převede pole DateTimeOffset hodnot na časy ve východním časovém pásmu USA a Kanady. Ukazuje, že metoda ConvertTime bere v úvahu úpravy časového pásma, protože úprava časového pásma probíhá ve zdrojovém i cílovém časovém pásmu v 7. listopadu 2010 ve 2:00.

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.

Poznámky

Při provádění převodu použije metoda ConvertTime(DateTimeOffset, TimeZoneInfo) všechna pravidla úpravy platná v destinationTimeZone časovém pásmu.

Toto přetížení se liší od ostatních přetížení metody ConvertTime přijetím hodnoty DateTimeOffset jako prvního parametru. Určuje datum a čas jako posun od koordinovaného univerzálního času (UTC) místo data a času v určitém časovém pásmu. V důsledku toho parametr dateTimeOffset nemůže představovat nejednoznačný čas nebo neplatný čas.

Při převodu hodnoty dateTimeOffset na čas v cílovém časovém pásmu tato metoda bere v úvahu všechna pravidla úpravy platná v cílovém časovém pásmu.

Pokud výsledkem převodu dateTimeOffset je hodnota data a času, která je dřívější než DateTimeOffset.MinValue nebo novější než DateTimeOffset.MaxValue, vrátí tato metoda DateTimeOffset.MinValue nebo DateTimeOffset.MaxValue, v uvedeném pořadí.

Viz také

Platí pro

ConvertTime(DateTime, TimeZoneInfo, TimeZoneInfo)

Zdroj:
TimeZoneInfo.cs
Zdroj:
TimeZoneInfo.cs
Zdroj:
TimeZoneInfo.cs

Převede čas z jednoho časového pásma na jiné.

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

Parametry

dateTime
DateTime

Datum a čas, které chcete převést.

sourceTimeZone
TimeZoneInfo

Časové pásmo dateTime.

destinationTimeZone
TimeZoneInfo

Časové pásmo, na které chcete převést dateTime.

Návraty

Datum a čas v cílovém časovém pásmu, které odpovídá parametru dateTime ve zdrojovém časovém pásmu.

Výjimky

Vlastnost Kind parametru dateTime je Local, ale parametr sourceTimeZone se nerovná Local.

-nebo-

Vlastnost Kind parametru dateTime je Utc, ale parametr sourceTimeZone se nerovná Utc.

-nebo-

Parametr dateTime je neplatný čas (to znamená, že představuje čas, který neexistuje kvůli pravidlu úpravy časového pásma).

Parametr sourceTimeZone je null.

-nebo-

Parametr destinationTimeZone je null.

Příklady

Následující příklad znázorňuje použití ConvertTime(DateTime, TimeZoneInfo, TimeZoneInfo) metody pro převod z havajského standardního času na místní čas.

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

Poznámky

Při provádění převodu použije metoda ConvertTime všechna pravidla úpravy platná v destinationTimeZone časovém pásmu.

Hodnota vlastnosti Kind parametru dateTime musí odpovídat parametru sourceTimeZone, jak ukazuje následující tabulka.

Hodnota DateTime.Kind hodnota sourceTimeZone Chování metody
DateTimeKind.Utc Rovná se TimeZoneInfo.Utc. Převede dateTime na čas cílového časového pásma.
DateTimeKind.Utc Nerovná se TimeZoneInfo.Utc. Vyvolá ArgumentException.
DateTimeKind.Local Rovná se TimeZoneInfo.Local. Převede dateTime na čas cílového časového pásma.
DateTimeKind.Local Nerovná se TimeZoneInfo.Local. Vyvolá ArgumentException.
DateTimeKind.Unspecified Jakýkoliv. Převede dateTime na čas cílového časového pásma.

Můžete také převést na koordinovaný univerzální čas (UTC) voláním ConvertTimeFromUtc a ConvertTimeToUtc metod.

Vlastnost Kind vrácené hodnoty DateTime je nastavená, jak je znázorněno v následující tabulce.

Podmínka Vrácená hodnota vlastnosti Kind
Argument destinationTimeZone je TimeZoneInfo.Utc. DateTimeKind.Utc
Argument destinationTimeZone je TimeZoneInfo.Local. DateTimeKind.Local
Všechny ostatní hodnoty data a času, zdrojová časová pásma a cílové časové pásmo. DateTimeKind.Unspecified

Pokud je hodnota parametru dateTime nejednoznačným časem ve zdrojovém časovém pásmu, interpretuje se jako standardní čas. Pokud je parametr dateTime neplatným časem ve zdrojovém časovém pásmu, tato metoda vyvolá ArgumentException.

Pokud výsledkem převodu dateTime je hodnota data a času, která je dřívější než DateTime.MinValue nebo novější než DateTime.MaxValue, vrátí tato metoda DateTime.MinValue nebo DateTime.MaxValue, v uvedeném pořadí.

Metoda ConvertTime(DateTime, TimeZoneInfo, TimeZoneInfo) vyvolá výjimku ArgumentException, pokud je vlastnost DateTime.Kind argumentu dateTimeDateTimeKind.Local, ale argument sourceTimeZone není TimeZoneInfo.Local. Chcete-li zjistit, zda je zdrojové časové pásmo místní časové pásmo nebo univerzální časové pásmo, metoda testuje rovnost odkazů místo testování rovnosti hodnot s metodou Equals(TimeZoneInfo). Všimněte si, že TimeZoneInfo objekty, které představují místní časové pásmo a které jsou načteny voláním metody FindSystemTimeZoneById nemají referenční rovnost s TimeZoneInfo.Local. Kromě toho TimeZoneInfo objekty, které představují místní nebo univerzální časové pásmo a které jsou načteny iterací kolekce vrácené metodou GetSystemTimeZones nemají referenční rovnost s TimeZoneInfo.Local nebo TimeZoneInfo.Utc. Alternativně můžete volat metodu ConvertTimeBySystemTimeZoneId(DateTime, String, String).

Viz také

Platí pro