Pregunta

Estoy considerando la globalización de una aplicación que he desarrollado en asp.net mvc.

Actualmente estoy usando archivos de recursos para almacenar los mensajes que presento al usuario (es decir, cuando guardo algo en la base de datos, y al usuario se le muestra el mensaje "Lo que se guardó correctamente", ese texto se almacena en un archivo de recursos para que pueda localizar fácilmente el mensaje para otro idioma.

La pregunta que tengo es cómo hacer esto en una vista en su conjunto. En este momento, tengo algunas vistas que son en su mayoría HTML con una pequeña cantidad de lógica de presentación.

¿Cuál es la mejor práctica para localizar una vista? He echado un vistazo aquí:

El enfoque en esa publicación parece ser una forma interesante de avanzar, pero me pregunto qué tan fácil será mantener vistas separadas para cada idioma.

NOTA: en general, no he hecho mucha globalización o localización en asp.net, por lo que es posible que existan algunas de las mejores prácticas del mundo no mvc que me faltan.

¿Fue útil?

Solución

Nos encontramos con el mismo problema con nuestra nueva aplicación MVC y nuestra solución está aquí . Mantener puntos de vista separados puede ser un trabajo difícil, pero mantener el mismo punto de vista con diferentes idiomas parece ser igual de difícil, decidimos que mantener todo el punto de vista nos daría más poder, lo cual sería necesario para hacer una publicación para los países asiáticos. p>

Esperemos que te ayude.

Otros consejos

Use una App_LocalResources para cada carpeta de vista y coloque recursos para cada vista en la carpeta y en cada cultura.

Más información aquí .

Puedes intentar configurar tus rutas para que sean como:

    RouteTable.Routes.MapRoute(
        "Globalization",
        "{localization}/{controller}/{action}/{id}",
        new { localization = "en-us", controller = "Globalization", action = "Index", id = "" }
        );

y luego tenga la localización como un parámetro para sus acciones, al igual que la identificación es un parámetro.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top