Condividi tramite


Ora e fusi orari

Aggiornamento: novembre 2007

Oltre alla struttura DateTime di base, .NET Framework include le classi seguenti che supportano l'utilizzo dei fusi orari:

  • TimeZone

    Utilizzare questa classe per lavorare con il fuso orario locale del sistema e l'ora UTC (Coordinated Universal Time). La funzionalità della classe TimeZone è ampiamente sostituita dalla classe TimeZoneInfo.

  • TimeZoneInfo

    Utilizzare questa classe per lavorare con qualsiasi fuso orario predefinito di un sistema, per creare fusi orari nuovi e per convertire facilmente date e ore da un fuso orario all'altro. Per lo sviluppo di nuovo codice, utilizzare la classe TimeZoneInfo invece della classe TimeZone.

  • DateTimeOffset

    Utilizzare questa struttura per lavorare con date e ore il cui offset (o differenza) dall'ora UTC è conosciuto. La struttura DateTimeOffset combina un valore di data e ora con il relativo offset rispetto all'ora UTC. A causa della relazione con UTC, un singolo valore di data e ora identifica uno specifico momento in modo inequivocabile. Ciò migliora la portabilità di un valore DateTimeOffset da un computer all'altro rispetto a un valore DateTime.

In questa sezione sono contenute le informazioni necessarie per utilizzare i fusi orari e per creare applicazioni dipendenti dal fuso orario in grado di convertire date e ore da uno fuso orario all'altro.

In questa sezione

Panoramica sul fuso orario

Vengono illustrati la terminologia, i concetti e i problemi relativi alla creazione di applicazioni che dipendono dal fuso orario.

Scelta tra DateTime, DateTimeOffset e TimeZoneInfo

Viene illustrato quando utilizzare i tipi DateTime, DateTimeOffset e TimeZoneInfo con i valori di data e ora.

Ricerca dei fusi orari definiti in un sistema locale

Viene descritto come enumerare i fusi orari individuati in un sistema locale.

Procedura: enumerare i fusi orari presenti in un computer

Vengono forniti esempi che enumerano i fusi orari definiti nel Registro di sistema di un computer e che consentono agli utenti di selezionare un fuso orario predefinito da un elenco.

Procedura: accedere agli oggetti predefiniti dell'ora UTC e del fuso orario locale

Viene descritto come accedere all'ora UCT (Coordinated Universal Time) e al fuso orario locale.

Procedura: creare un'istanza di un oggetto TimeZoneInfo

Viene descritto come creare un'istanza di un oggetto TimeZoneInfo dal Registro di sistema locale.

Creazione di un'istanza di un oggetto DateTimeOffset

Vengono illustrate le modalità per la creazione di un'istanza di un oggetto DateTimeOffset, nonché quelle per la conversione di un valore DateTime in un valore DateTimeOffset.

Procedura: creare fusi orari senza regole di regolazione

Viene descritto come creare un fuso orario personalizzato che non supporta la transizione da e verso l'ora legale.

Procedura: creare fusi orari con regole di regolazione

Viene descritto come creare un fuso orario personalizzato che supporta una o più transizioni da e verso l'ora legale.

Salvataggio e ripristino dei fusi orari

Viene descritto il supporto TimeZoneInfo per la serializzazione e la deserializzazione dei dati relativi al fuso orario e vengono illustrati alcuni scenari in cui è possibile utilizzarli.

Procedura: salvare fusi orari in una risorsa incorporata

Viene descritto come creare un fuso orario personalizzato e salvarne le informazioni in un file di risorse.

Procedura: ripristinare i fusi orari da una risorsa incorporata

Viene descritto come creare un'istanza dei fusi orari personalizzati salvati in un file di risorse incorporato.

Esecuzione di operazioni aritmetiche con date e ore

Vengono descritti i problemi relativi all'aggiunta, alla sottrazione e al confronto dei valori DateTime e DateTimeOffset.

Procedura: utilizzare fusi orari nell'aritmetica di data e ora

Viene descritto come eseguire operazioni aritmetiche con date e ore che riflettono le regole di rettifica di un fuso orario.

Conversione tra DateTime e DateTimeOffset

Viene descritto come eseguire la conversione tra valori DateTime e DateTimeOffset.

Conversione degli orari tra fusi orari

Viene descritto come convertire gli orari da un fuso orario all'altro.

Procedura: risolvere orari ambigui

Viene descritto come risolvere un'ora ambigua eseguendone il mapping all'ora standard del fuso orario.

Procedura: consentire agli utenti di risolvere orari ambigui

Viene descritto come consentire a un utente di determinare il mapping tra un'ora locale ambigua e un'ora UCT (Coordinated Universal Time).

Riferimenti

TimeZoneInfo