Condividi tramite


Risorse nelle applicazioni

Quasi tutte le applicazioni destinate a un impiego professionale richiedono l'utilizzo di risorse. Una risorsa è costituita da dati non eseguibili che vengono distribuiti con l'applicazione stessa. Una risorsa può essere visualizzata in un'applicazione sotto forma di messaggi di errore o come parte dell'interfaccia utente. Le risorse possono contenere dati in diversi formati, tra cui stringhe, immagini e oggetti persistenti. L'archiviazione di dati in un file di risorse consente di modificare i dati senza ricompilare l'intera applicazione. Per poter scrivere oggetti persistenti in un file di risorse, è necessario che gli oggetti siano serializzabili.

.NET Framework offre ampio supporto per la creazione e la localizzazione delle risorse. .NET Framework supporta inoltre un modello semplice per la creazione del package e la distribuzione delle risorse localizzate.

Creazione e localizzazione delle risorse

È possibile localizzare le risorse dell'applicazione per lingue specifiche. In tal modo è possibile generare versioni localizzate (tradotte) delle applicazioni. Le applicazioni caricano le risorse localizzate appropriate in base al valore della proprietà CultureInfo.CurrentUICulture. Tale valore viene impostato in modo esplicito nel codice dell'applicazione oppure viene impostato da Common Language Runtime in base alle impostazioni internazionali dell'utente corrente del computer locale. Per ulteriori informazioni sull'impostazione della proprietà CurrentUICulture, vedere Ricerca e utilizzo delle risorse per una lingua specifica e Uso della proprietà CurrentUICulture.

Creazione del package e distribuzione delle risorse

È possibile distribuire le risorse dell'applicazione in assembly satellite. Per definizione, gli assembly satellite contengono solo file di risorse. Non contengono codice dell'applicazione. Nel modello di distribuzione con assembly satellite, viene creata un'applicazione con un solo assembly predefinito, l'assembly principale, e diversi assembly satellite. È opportuno creare un assembly satellite per ogni lingua supportata dall'applicazione. Poiché gli assembly satellite non fanno parte dell'assembly principale, è possibile sostituire o aggiornare facilmente le risorse corrispondenti a una lingua specifica senza sostituire l'assembly principale dell'applicazione.

Determinare con attenzione le risorse che costituiranno l'assembly di risorse predefinito dell'applicazione. Poiché tale assembly fa parte dell'assembly principale, le eventuali modifiche ad esso apportate richiederanno la sostituzione dell'assembly principale. Se non viene fornita una risorsa predefinita, quando il processo di recupero di una risorsa di riserva proverà a cercarla verrà generata un'eccezione. In un'applicazione progettata correttamente l'utilizzo delle risorse non deve mai generare un'eccezione.

Vedere anche

Riferimenti

CultureInfo.CurrentUICulture Property

Concetti

Uso della proprietà CurrentUICulture
Creazione del package e distribuzione delle risorse

Altre risorse

Codifica e localizzazione