TimeZoneInfo.ConvertTimeFromUtc(DateTime, TimeZoneInfo) Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Converte un'ora UTC (Coordinated Universal Time) nell'ora in un fuso orario specificato.
public:
static DateTime ConvertTimeFromUtc(DateTime dateTime, TimeZoneInfo ^ destinationTimeZone);
public static DateTime ConvertTimeFromUtc(DateTime dateTime, TimeZoneInfo destinationTimeZone);
static member ConvertTimeFromUtc : DateTime * TimeZoneInfo -> DateTime
Public Shared Function ConvertTimeFromUtc (dateTime As DateTime, destinationTimeZone As TimeZoneInfo) As DateTime
Parametri
- dateTime
- DateTime
Ora UTC (Coordinated Universal Time).
- destinationTimeZone
- TimeZoneInfo
Fuso orario in cui eseguire la conversione dateTime .
Restituisce
Data e ora nel fuso orario di destinazione. La Kind proprietà è se destinationTimeZone è UtcUtc ; in caso contrario, la relativa Kind proprietà è Unspecified.
Eccezioni
destinationTimeZone è null.
Esempio
L'esempio seguente converte l'ora UTC (Coordinated Universal Time) in Ora centrale.
DateTime timeUtc = DateTime.UtcNow;
try
{
TimeZoneInfo cstZone = TimeZoneInfo.FindSystemTimeZoneById("Central Standard Time");
DateTime cstTime = TimeZoneInfo.ConvertTimeFromUtc(timeUtc, cstZone);
Console.WriteLine("The date and time are {0} {1}.",
cstTime,
cstZone.IsDaylightSavingTime(cstTime) ?
cstZone.DaylightName : cstZone.StandardName);
}
catch (TimeZoneNotFoundException)
{
Console.WriteLine("The registry does not define the Central Standard Time zone.");
}
catch (InvalidTimeZoneException)
{
Console.WriteLine("Registry data on the Central Standard Time zone has been corrupted.");
}
let timeUtc = DateTime.UtcNow
try
let cstZone = TimeZoneInfo.FindSystemTimeZoneById "Central Standard Time"
let cstTime = TimeZoneInfo.ConvertTimeFromUtc(timeUtc, cstZone)
printfn $"The date and time are {cstTime} {if cstZone.IsDaylightSavingTime cstTime then cstZone.DaylightName else cstZone.StandardName}."
with
| :? TimeZoneNotFoundException ->
printfn "The registry does not define the Central Standard Time zone."
| :? InvalidTimeZoneException ->
printfn "Registry data on the Central Standard Time zone has been corrupted."
Dim timeUtc As Date = Date.UtcNow
Try
Dim cstZone As TimeZoneInfo = TimeZoneInfo.FindSystemTimeZoneById("Central Standard Time")
Dim cstTime As Date = TimeZoneInfo.ConvertTimeFromUtc(timeUtc, cstZone)
Console.WriteLine("The date and time are {0} {1}.", _
cstTime, _
IIf(cstZone.IsDaylightSavingTime(cstTime), _
cstZone.DaylightName, cstZone.StandardName))
Catch e As TimeZoneNotFoundException
Console.WriteLine("The registry does not define the Central Standard Time zone.")
Catch e As InvalidTimeZoneException
Console.WriteLine("Registry data on the Central Standard Time zone has been corrupted.")
End Try
Commenti
Quando si esegue la conversione, il ConvertTimeFromUtc metodo applica tutte le regole di regolazione applicate nel destinationTimeZone fuso orario.
Il comportamento preciso di questo metodo dipende dal valore della Kind proprietà del dateTime parametro, come illustrato nella tabella seguente.
| Proprietà DateTime.Kind | Conversione |
|---|---|
| DateTimeKind.Local | Genera un'eccezione ArgumentException. |
| DateTimeKind.Unspecified oppure DateTimeKind.Utc | Esegue la conversione dall'ora UTC (Coordinated Universal Time). |
Se la conversione di dateTime restituisce un valore di data e ora precedente DateTime.MinValue o successivo DateTime.MaxValuea , questo metodo restituisce DateTime.MinValue rispettivamente o DateTime.MaxValue.