How to create and maintain a multilingual project?

I plan to make a multilingual application in C # and wondered how best to deal with this:

  • Container for languages;
  • Best approaches for reading / modifying initiator / requested;
  • As the program grows, text for each language is what you usually do and recommend as best practice as possible;
  • What problems do you have when running this type of application;

Thanks for any tips, answers, etc.

I would really like the links and sample code if this is not too many problems (not required, only if you have time and can).

+6
c # containers desktop-application multilingual
source share
3 answers

I would say that the standard way to localize a C # application is to use resources and satellite assemblies. Here are some articles about this:

Creation and implementation of satellite assemblies
Localization like a pro


MSDN: Application Localization

+2
source share

For language processing, the best way is to save the lines in a resource file. You can release additional languages ​​with satellite assemblies. You will find a lot of information about globalization and localization using C #: for example, on MSDN

If you plan on storing a lot of data, I would suggest SQL Compact + NHibernate. XML is very slow, especially with C #.

+1
source share

As everyone says, using a resource file is a good way to store localization data. From this point you can find some approaches, the most common approaches being using a satellite assembly or using a file-based resource manager.

In my personal opinion, I think that building satellites helps your project to be more flexible and obviously helps with extensibility (I think that many commercial programs use this approach).

On the following link you can find information about these two approaches.

.NET - Localization Using a Resource File

The following link is a really good article on localization and basic concepts.

Internationalization and localization

Hope this helps.

+1
source share

All Articles