2010-07-12 21 views
6

Je prévois de faire une application en plusieurs langues en C# et je me demandais quelle est la meilleure façon de gérer le suivi:Comment créer et gérer un projet multilingue?

  • Le conteneur pour les langues;
  • Meilleures approches pour lire/modifier une fois initié/demandé;
  • Comme le programme se développe le fait le le texte pour chaque langue que faites-vous habituellement et recommandez comme meilleur pratique ;
  • Quels types de problèmes avez-vous rencontré lors de ce type d'applications ;

Merci pour tous les conseils, réponses, etc.

J'apprécierais vraiment des liens et des exemples de code si ce n'est pas trop de problèmes (non requis, que si vous avez le temps et peut).

+1

un downvote sans commentaire est juste comme une personne qui vote sans signification. Venez et dites-moi au moins votre raison. – Prix

+1

Ce n'était pas moi, mais je pense que la question est trop générique. Peut-être divisé en: comment créer un projet multilingue? Comment stocker des données (donnant plus de détails sur le domaine), comment gérer i18n? etc – Mau

+0

Merci pour l'entrée Mau je vais le retravailler maintenant ...Je suis très incertain sur la façon de réécrire il a pensé – Prix

Répondre

1

Pour gérer langues, la meilleure façon est de stocker des chaînes dans un fichier de ressources. Vous pouvez libérer des langues supplémentaires avec des assemblys satellites. Vous trouverez beaucoup d'informations sur la globalisation et la localisation avec C#: par exemple dans MSDN

Si vous envisagez de stocker beaucoup de données, je suggère SQL Compact + NHibernate. XML est très lent surtout avec C#.

+0

Merci, je ne suis pas sûr si ce sera autant de données au début mais je suis sûr qu'il va augmenter au fil du temps avec de nouvelles fonctionnalités ... – Prix

1

Comme tout le monde l'a dit, l'utilisation d'un fichier de ressources est un bon moyen de stocker les données de localisation. À partir de ce point, vous pouvez trouver quelques approches, les approches les plus courantes pourraient être l'assemblage par satellite ou l'utilisation d'un gestionnaire de ressources basé sur des fichiers. Selon mon opinion personnelle, je pense que le montage par satellite aide votre projet à être plus flexible et aide évidemment à l'extensibilité (je pense que beaucoup de logiciels commerciaux utilisent cette approche).

Sur le lien suivant, vous trouverez des informations sur les deux approches.

.NET - Localization using Resource file

Le lien suivant est une localisation article aboud vraiment bons et les concepts de base.

Internationalization & Localization

Hope it helps.