View
722
Download
0
Category
Preview:
DESCRIPTION
Lets find out what is localization, globalization and internationalization in .NET and how it works. Will peep into the Application directory as well as Resource file usage.
Citation preview
Localization Framework
Localization, Internationalization & Globalization
.NET Package For You
System.Globalization
System.Globalization.CultureInfo
Aplication Directory
Fallback Mechanism of Resource
Implementation
Agenda
Localization, Internationalization & Globalization
• Localization
• Making your application support a specific language/locale.
• Internationalization
• Making your application able to support a range of languages and locales
• Globalization
• The combination of Internationalization and Localization
• Language & Locale
Language Locale
.NET Package For You
I/O
Reflection
Net
Globalization TextResources
Collections
Diagnostics
Serialization
Security
Threading
ServiceProcess
• System.Globalization
Core Locale services (Date/Time, Currency, Language Processing etc.)
• System.ResourceMulti-Lingual Resource Services
• System.TextCore character conversion Services. (To/From Unicode)
System.Globalization
• Culture-aware String Services
• Casing, Comparison, Collation, Segmentation, Enumeration etc.
• Date-Time Formatting
• dd/mm/yy, mm/dd/yyyy etc.
• Numeric Formatting
• 12,000,000 and 12.000.000
• Calendar Support
• Gregorian, non-gregorian
System.Globalization.CultureInfo
CultureInfo
CurrentUICulture
CurrentCulture
• Information about specific cultures i.e
<LanguageCode>-<RegionCode>
en-US es-ES fr-FR
CurrentUICulture : meant to cover the localization (a.k.a. localisation, a.k.a. translation) of Windows into other languages.
CurrentCulture : allows a user to take any language version of Windows (even if it is not their native language) and see defaults for date formats and number formats and order of text in sorted lists that make sense to them.
Application Directory
en-US
en-UK
en-CA
en-ES
Root .NET Application
en
ja
Application DirectoryApplication Directory
Thread.CurrentThread.CurrentUICulture = new CultureInfo(“en");
Application Directory (Contd.)
Thread.CurrentThread.CurrentUICulture = new CultureInfo(“en-CA");
en-US
en-UK
en-CA
es-ES
Root .NET Application
en
ja
Application DirectoryApplication Directory
Fallback mechanism used to locate appropriate resources
•Attempt to load “en-CA” resource assemble
•If not available, load “en” assembly
•If not available, load default application resources
•Else raise an exception
ResourceResource FallbackFallback MechanismMechanism
33Root .NET
Application
22 en en
en-US en-US
en-UK en-UK
en-CA en-CA11
ja ja
Resource Fallback Mechanism
CompilationCompilation ProcessProcess
.resx file .resx file
.resource file .resource file
.resource.dll file .resource.dll file
• Resources are defined in XML documents
– RESX Files• Filenames are significant
– Resource.en-US.resx– Resource.en-UK.resx– Resource.en-CA.resx
• Satellite Assemblies– For each language variant
Resource.en-US.resxResource.en-US.resx
Resource.en-CA.resxResource.en-CA.resx
How we implement Localization?
Localization ProcessLocalization Process
Recommended