SailingEase .NET Resources Tool

  Home Features Download Contact Us


Constrain the implementation of multi-language resources by using an interface

In the traditional GetString approach or other equivalents, risks exist that the accesses to resource text are uncontrollable. This is especially true in large software projects or team development, where it is not possible to make sure all resource text acquisitions are correct and available. For example, there could be spelling errors and can be chaos resulted from multiple revisions on resource files.

Based on our experience, by using the traditional resource text acquisition methods, with simply a few hundred resource strings there could be catastrophic loss of control, inability to maintain or check one by one, and therefore extra and high costs to the project.
Think about the following:

Spelling errors occur when developers get resources.
When the resource files are modified, the original resource file identifiers are modified but not synchronized to other parts of the program.
When the resource files are modified, the original resource entries are deleted by mistake, or some entries mistaken as no longer in use, but actually still in need somewhere are deleted.
Cannot know the usage of a specific resource text entry: whether it is in use; whether it is used in multiple places.
When adding language resources, it is hard to guarantee the synchronization of different language resources, especially when there are large number of resources and revisions.

These problems are even more serious with more project participants. You need a reliable and controllable approach to guarantee the quality of your projects.

SailingEase .NET Resources Toolis designed to solve the above problems.


Access Language Resources Through a Management Class (Main Class)


In the main class, you can get all available language resources via the GetLanguages() method, and get the currently available resources via the Current property. The method to get all available resources does it by reflection. Therefore, you only need to generate the main class once, and then you can expand it and create your own functions based on it, rather than generating the main class code from scratch.

Simply via the Language.Current property, the resource user can have access to the language resource currently in use without caring about which specific one it is or whether it is available or different. He/she also does not need to worry about the spelling errors that may occur while getting the resource. This is because the ILanguage interface takes over all the troubles.
Besides, the GetString() method allows you to specify the resource name with a string, so you can get the contents of this resource. This is particularly useful when implementing UI-layer language resource binding.


Copy Resource Rows


In SailingEase .NET Resources Tool, the copy/paste of resource rows does not simply copy a row or multiple rows of data, it can recognize the culture information contained during the operation. If the culture information in the target is different from that in the source, it matches automatically.

For example, Project A contains "Chinese" and "English", while Project B contains "English" and "French", then during the duplication of resource rows from Project A to Project B, English resources in Project A will be automatically pasted to the English part of Project B, while the Chinese resource will be skipped. The two projects can match automatically even if their orders of cultures are different.


Real-Time Error Checking


SailingEase .NET Resources Tool can specify problems existing in the resource entries, such as invalid names or name conflicts, at real time.

Simply double-clicking an error entry in the error list, you can locate the error row. This is convenient for you to handle problems when there are many resource rows.

With specially designed checking algorithms, the checking is fast and efficient even when there are thousands of or even more resource entries.


Export to/from Microsoft Excel


There is no doubt that the ability to export to and import from Microsoft Excel can help you breeze through your localization work.

In a very traditional resource processing technology, developers usually submit resource files in INI, XML or TXT format directly to translators for translation. With this approach, developers are unable to check row by row whether the names of resource rows have been changed by mistake and whether some resource entries have been wrongly deleted due to failed operations.

During the iteration cycle of a project, resource files are modified all the way and submitted to the translators for translation periodically (such as the updated resource files during a version upgrade). In this process, the translators will use existing translation results, doubling the chances of producing damaged resource entries.

The use of Microsoft Excel tables, however, not only makes localizers' work easier, but more important, when importing translation results, SailingEase .NET Resources Tool checks potential errors in all the resources. Besides, as the use of resources is interface-based, if resource entries are deleted by mistake, after the code is generated your development environment (such as Visual Studio) will report bugs directly to you when it compiles the code.



  Contact Us 
  2010 all right reserved ShengXunWei Software Technology Co.,Ltd