En una aplicación de software llamamos globalización a la capacidad que tienen las aplicaciones para manejar diferentes culturas y regiones (idiomas), mientras que la localización es el proceso de personalización de la aplicación de una cultura específica y de la región (configuración regional).
En ASP.NET la clase que nos permite hacer uso de este recurso es llamada CultureInfo y se encuentra localizada en el namespace System.Globalization. Esta contiene muchos métodos y propiedades para identificar las diferentes culturas y configurar la aplicación para utilizar una determinados idiomas.
La propiedad System.Threading.Thread.CurrentCulture se utiliza para establecer una cultura específica para la aplicación. Esta propiedad se utiliza para dar formato a la cadena de fecha, hora y moneda.
La propiedad System.Threading.Thread.CurrentUICulture se utiliza para establecer una referencia cultural neutra para la aplicación. Esto lo logramos creando archivos de recursos los cuales al finalizar deben de especificar el idioma del que hacen uso, Por ejemplo, para el usuario Inglés utilizamos (archivoRecurso.en-US.resx) o Francés utilizaría algo como (archivoRecurso.fr-FR.resx). Así que al crear archivos para diferentes idiomas, la aplicación seleccionará automáticamente el archivo de recursos correcto para utilizarse en base a la configuración de la cultura.
Hay tres tipos de Cultura de la aplicación puede utilizar. Uno de ellos es InvariantCulture, la segunda es NeutralCulture, y el último es SpecificCulture y veamos como va el uso de cada una de estas propiedades.
InvariantCulture en realidad significa la cultura agnóstica. Se utiliza InvariantCulture cuando se desea comparar las cadenas, para presentar o comparar fechas en forma de la cultura agnóstica. Por defecto se utiliza la referencia cultural en-US.
NeutralCulture es en realidad una cultura de lenguaje específico sin tener en cuenta la fecha y hora específica del país y de los formatos de moneda. Puede utilizar esta cultura para determinar qué archivo de recursos de idioma específico de su aplicación va a utilizar. Puede especificar NeutralCulture con dos caracteres en minúsculas la identificación de la lengua. Por ejemplo, ‘en’ para Inglés, “fr” para el francés, ‘es’ para español.
SpecificCulture es la lengua y la cultura específica del país que determina el idioma que desea utilizar con su aplicación y también el formato de fecha y hora y la moneda a utilizar con su solicitud. Se especifica la cultura específica de dos caracteres en minúsculas la identificación de la lengua y dos letras mayúsculas que identifican el país separadas por guión. Por ejemplo, “en-US” para Inglés (EE.UU.), “es-ES ‘para Inglés (Reino Unido),” fr-FR “para francés (Francia), etc.
La siguiente semana continuaré con este artículo, dejaré la teoría y explicaré como se utilizan estos conceptos.