Creación de un conmutador de idiomas - solo 2 idiomas - ASP.NET MVC

La aplicación ASP.NET MVC, cerca de completarse, se decidió que necesitaba un conmutador de idioma. Simplemente serán dos idiomas: inglés y japonés. Deben poder cambiar entre los dos, pero si uno no está seleccionado, debe elegir el idioma predeterminado del navegador.

Me pregunto cuál sería la mejor solución en este caso.

Primer pensamiento, rutas! Así que cambio las rutas para tener un/{l} al final de cada ruta, y por defectol = "". Luego, en mi BaseController (cada controlador se basa en él), verifico la variable l en la ruta. Cada acción devuelve una vista basada en el idioma.

Quería simplemente poder hackear / ja-jp al final de la url, y mostraría la vista en japonés. No parecía que la ruta fuera correcta. Entonces, fui muy malo en mis puntos de vista y codifiqué los enlaces a mano ... Al principio no pude conseguir que el ayudante diera los enlaces correctos ... y tuve la mala costumbre de codificarlos manualmente. Por lo tanto, tendría que volver a codificar cada enlace de nuevo, para hackear la variable de idioma al final.

Segundo pensamiento... ok, use jQuery para agregar la variable de lenguaje a todos los href del ancla. Eso parece demasiado torpe y difícil en ciertas situaciones donde se ocultan hrefs hasta que sea necesario, etc ...

Entonces ... en este punto, he decidido hacer lo que sea necesario. ¿Cuál es la forma más elegante de cambiar entre 2 idiomas, sin usar archivos de recursos? Simplemente quiero que la acción elija entre 2 vistas, según el idioma.

¿Reescribo todos los enlaces que tengo para usar el helper Html y luego hago que funcionen las rutas? Luego, en BaseController, simplemente configure el idioma en inglés si no tiene ningún valor.

Cualquier consejo es muy apreciado, gracias.

Respuestas a la pregunta(3)

Su respuesta a la pregunta