Questo articolo è stato tradotto automaticamente. Per visualizzare l'articolo in inglese, selezionare la casella di controllo Inglese. È possibile anche visualizzare il testo inglese in una finestra popup posizionando il puntatore del mouse sopra il testo.
Traduzione
Inglese

Metodo TimeZoneInfo.ConvertTimeBySystemTimeZoneId (DateTime, String)

 

Data di pubblicazione: ottobre 2016

Converte un'ora nell'ora di un fuso orario diverso in base all'identificatore del fuso orario.

Spazio dei nomi:   System
Assembly:  mscorlib (in mscorlib.dll)

public static DateTime ConvertTimeBySystemTimeZoneId(
	DateTime dateTime,
	string destinationTimeZoneId
)

Parametri

dateTime
Type: System.DateTime

Data e ora da convertire.

destinationTimeZoneId
Type: System.String

Identificatore del fuso orario di destinazione.

Valore restituito

Type: System.DateTime

Data e ora nel fuso orario di destinazione.

Exception Condition
ArgumentNullException

destinationTimeZoneId è null.

InvalidTimeZoneException

L'identificatore del fuso orario è stato trovato, ma i dati del Registro di sistema sono danneggiati.

SecurityException

Il processo non ha le autorizzazioni necessarie per leggere dalla chiave del Registro di sistema che contiene le informazioni sul fuso orario.

TimeZoneNotFoundException

Identificatore destinationTimeZoneId non trovato nel sistema locale.

Quando si esegue la conversione, il ConvertTimeBySystemTimeZoneId metodo si applica a tutte le regole di regolazione attiva nel destinationTimeZoneId fuso orario.

Questo overload è in gran parte identico alla chiamata di ConvertTime(DateTime, TimeZoneInfo) metodo, ad eccezione del fatto che consente di specificare il fuso orario di destinazione tramite il relativo identificatore anziché tramite un riferimento all'oggetto. Questo metodo è particolarmente utile quando è necessario convertire un'ora senza recuperare l'oggetto fuso orario che corrisponde a tale e non è necessario sapere se l'ora convertita standard o l'ora legale.

Il ConvertTimeBySystemTimeZoneId(DateTime, String) metodo determina il fuso orario di origine dal valore della dateTime del parametro Kind proprietà, come illustrato nella tabella seguente.

Valore della proprietà Kind

Fuso orario di origine

Comportamento del metodo

DateTimeKind.Local

Local

Converte l'ora locale nell'ora di destinationTimeZone.

DateTimeKind.Utc

Utc

Converte l'ora in Coordinated Universal Time (UTC) destinationTimeZone.

DateTimeKind.Unspecified

Si presuppone che sia Local.

Converte l'ora locale nell'ora di destinationTimeZone.

Il Kind proprietà dell'oggetto restituito DateTime valore viene impostato come illustrato nella tabella seguente.

Condizione

Ha restituito il valore della proprietà Kind

L'elemento destinationTimeZone è TimeZoneInfo.Utc.Id.

DateTimeKind.Utc

Qualsiasi altro destinationTimeZone valore.

DateTimeKind.Unspecified

Se il valore di dateTime parametro è un'ora locale ambigua, viene interpretato come ora solare. Se il dateTime parametro non è un'ora locale non valida, questo metodo genera un ArgumentException.

Se la conversione di dateTime restituisce un valore di data e ora precedente a DateTime.MinValue o successivo a DateTime.MaxValue, questo metodo restituisce DateTime.MinValue o DateTime.MaxValue, rispettivamente.

Questo metodo recupera il fuso orario, il cui identificatore è specificato per il destinationTimeZoneId parametro dal Registro di sistema. Non è possibile recuperare un oggetto fuso orario che viene creato utilizzando il CreateCustomTimeZone metodo. Il destinationTimeZoneId parametro deve corrispondere esattamente alla chiave di registro di sistema del fuso orario in lunghezza, ma non nel caso, per trovare una corrispondenza ha esito positivo si verifichi; vale a dire, il confronto di destinationTimeZoneId con fuso orario è tra maiuscole e minuscole degli identificatori.

.NET Framework
Disponibile da 3.5
Torna all'inizio
Mostra: