Conversioni e formattazioni indipendenti dal locale

di Daniele Bochicchio, in ASP.NET, C#, System.Globalization,

Quando si imposta all'interno del web.config (oppure in maniera programmatica) il formato della culture, ASP.NET utilizza per le formattazioni il locale indicato, che nel caso dell'Italia è it-it.

Questa impostazione può portare problemi quando cerchiamo di scrivere, ad esempio, orari, date o valute in formato internazionale.
Una semplice soluzione consiste nello specificare il CultureInfo con il quale effettuare la conversione, che specifichiamo come parametro di tipo IFormatProvider.
La classe CultureInfo si trova nel namespace System.Globalization.

Ad esempio per la class DateTime potremo scrivere:

string data = DateTime.Now.ToString("HH:mm", CultureInfo.InvariantCulture);

Mentre per essere sicuri che il risultato sia sempre lo stesso su qualsiasi locale, si può utilizzare anche in metodi come ToLower() o ToUpper():

string testo = stringa.ToLower(CultureInfo.InvariantCulture);

Commenti

Visualizza/aggiungi commenti

| Condividi su: Twitter, Facebook, LinkedIn

Per inserire un commento, devi avere un account.

Fai il login e torna a questa pagina, oppure registrati alla nostra community.

Approfondimenti

I più letti di oggi