Menú de navegaciónMenú
Categorías

La mejor forma de Aprender Programación online y en español www.campusmvp.es

?id=360d56fb-69b8-48a2-a4ef-623a9e613dbc

VÍDEO: Cómo elegir el idioma de una aplicación web desde una lista desplegable

Icono de advertencia ATENCIÓN: este contenido tiene más de 2 años de antigüedad y, debido a su temática, podría contener información desactualizada o inexacta en la actualidad.

SelectorIdiomaVideo

Una necesidad muy habitual en la de crear aplicaciones web multi-idioma. Es decir, aplicaciones web que se adapten a las preferencias de idioma de cada usuario que la visita. Dicha adaptación puede ser automática, sin que el usuario tenga que hacer nada, o voluntaria, cuando el usuario puede elegir su idioma de preferencia desde la propia interfaz de la aplicación.

Curiosamente, en ASP.NET la parte fácil es la automática, ya que solo hay que crear los recursos para cada idioma disponible en la aplicación (carpetas App_LocalResources y App_GlobalResources y los archivos .resx para cada idioma). Luego, gracias a las características de localización automática de .NET, con un simple ajuste en web.config podemos hacer que la aplicación se adapte automáticamente al idioma del navegador de cada usuario (con el nodo <globalization> de web.config).

Sin embargo, ¿qué pasa si queremos que los usuarios puedan elegir el idioma con el que deseen usar la aplicación? Por ejemplo, eligiéndolo desde una lista desplegable o pulsando en una banderita. En ese caso no se trata de una tarea tan fácil como pudiera parecer a simple vista.

Dado que conseguirlo requiere una explicación bastante amplia y existen detalles importantes que conviene ver con calma, a continuación encontrarás un vídeo práctico en el que explico muy detalladamente cómo conseguirlo de dos formas diferentes:

  • Para una página concreta, sobrescribiendo el método InitializeCulture de la misma. En ese caso se da la complicación añadida de que no es posible leer los valores de los controles, puesto que todavía no se han inicializado en esa fase del ciclo de vida de la página. Así que no queda más remedio que “hackear” un poco el sistema de eventos de lado servidor de ASP.NET para averiguar la información que necesitamos. Está todo explicado.
  • Para la aplicación completa: en este caso el enfoque es totalmente distinto y utilizaremos cookies para establecer las preferencias de idioma posteriormente desde el evento Application_BeginRequest.

Este vídeo está extraído de mi curso de desarrollo web con ASP.NET Web Forms, el cual incluye también el ejemplo completo para descarga.

Fecha de publicación:
José Manuel Alarcón Fundador de campusMVP, es ingeniero industrial y especialista en consultoría de empresa. Ha escrito diversos libros, habiendo publicado hasta la fecha cientos de artículos sobre informática e ingeniería en publicaciones especializadas. Microsoft lo ha reconocido como MVP (Most Valuable Professional) en desarrollo web desde el año 2004 hasta la actualidad. Puedes seguirlo en Twitter en @jm_alarcon o leer sus blog técnico o personal. Ver todos los posts de José Manuel Alarcón
Archivado en: Desarrollo Web

Boletín campusMVP.es

Solo cosas útiles. Una vez al mes.

🚀 Únete a miles de desarrolladores

DATE DE ALTA

x No me interesa | x Ya soy suscriptor

La mejor formación online para desarrolladores como tú

Agregar comentario

Los datos anteriores se utilizarán exclusivamente para permitirte hacer el comentario y, si lo seleccionas, notificarte de nuevos comentarios en este artículo, pero no se procesarán ni se utilizarán para ningún otro propósito. Lee nuestra política de privacidad.