Quelle serait la meilleure pratique pour localiser votre application ASP.NET MVC?
Je voudrais couvrir deux situations:
- un déploiement d'application dans IIS qui prendrait en charge plusieurs langues
- déploiement d'une seule langue / application.
Dans la première situation, devriez-vous opter pour une sorte de chose basée sur la vue comme ~ / View / EN, ~ / View / FI, ~ / View / SWE ou quelque chose de différent?
Qu'en est-il du deuxième cas, juste une configuration basée sur une application via Web.config et pointer ces différentes langues vers différentes URL?
Réponses:
Vous pouvez également jeter un coup d' oeil ici ASP.NET MVC 2 Localisation Guide complet et ASP.NET MVC 2 Validation du modèle avec la localisation de ces entires vous aider si vous travailler avec ASP.NET MVC 2.
la source
Vous localiseriez votre application ASP.NET MVC de la même manière qu'une application de formulaire Web ASP.NET classique.
Vous n'utiliseriez pas différentes pages / vues pour chaque langue, mais chaque page prendrait en charge plusieurs langues en utilisant des assemblys satellites.
Vous pouvez consulter l'entrée de blog de Matt Hawley pour plus d'explications et d'exemples.
la source
Malheureusement, le code original de Matt Hawley ne fonctionne pas dans la version finale d'ASP.NET MVC. Consultez un article mis à jour: http://blog.eworldui.net/post/2008/10/ASPNET-MVC-Localization-via-View-Engines.aspx
En général, le processus de localisation n'est pas aussi fluide dans le monde VS 2008 / ASP.NET MVC qu'avec les formulaires Web traditionnels. http://www.guysmithferrier.com/post/2009/05/Localizing-ASPNET-MVC.aspx
la source
Jetez un œil au projet MvcStore de Rob Connery. Il fait un screencast montrant une façon de résoudre le problème de la mondialisation.
http://wekeroad.com/2008/04/24/mvcstore-part-5
la source
Je n'ai jamais été convaincu de gérer la localisation dans un formulaire comme le suggère Elijah - les différentes longueurs et directions peuvent conduire à des formes très complexes ou très naffes.
Je ne fais que commencer avec MVC mais en prenant la méthode de découplage, vous voudriez utiliser le même contrôleur quelle que soit la langue (en traitant la langue comme une vue) - cela vous donnerait alors / Controller / Action / language / form
la source
Il existe un bon tutoriel avec une mise à jour récente sur Comment localiser l'application mvc asp.net couvrant tous les aspects, y compris la localisation DisplayName, la validation, l'utilisation du routage (stockage du nom de la culture dans l'URL), les problèmes avec le cache de sortie, etc. Blog Alex Adamyan - Bien mon clavier pleure doucement
la source
Nous sommes en fait complètement différents en remplaçant DataAnnotationsMetadaDataProvider . Ici, vous pouvez vous assurer que les valeurs DisplayNameAttribute sont résolues dans la langue correcte. En fait, vous pouvez même vous débarrasser de cet attribut et résoudre par des noms de champs uniquement si cela peut vous aider.
la source
J'ai écrit cet article il y a quelque temps. Il utilise un moteur de visualisation personnalisé. http://blog.oimae.com/2011/02/20/cultured-view-engine-for-mvc/
la source
Et un autre tutoriel pour une solution différente
Tutoriel: Créer une localisation ASP.NET MVC avec détection de langue
la source