![]() |
Web Development »
ASP.NET »
Howto
Intermediate
License: The Code Project Open License (CPOL)
Localizing ASP.NET MVCBy Farooq KaiserI will examine how to localize ASP.NET MVC application using existing .NET Framework |
C# (C#2.0), .NET (.NET2.0), ASP.NET, MVC, Architect, Dev
|
|
Advanced Search Add to IE Search |
|
|
|
||||||||||||||||
Localization is the process of customizing your application for a given culture and locale. The .NET framework offers the following namespaces and classes to facilitate the localization.
System.Globalization (The System.Globalization namespace contains classes that define culture-related information, including the language, the country/region, the calendars in use, the format patterns for dates, currency, and numbers, and the sort order for strings) CutureInfo provides information about a specific culture. System.Resources namespace provides classes and interfaces that allow developers to create, store, and manage various culture-specific resources used in an application. In this article, I will examine how to localize ASP.NET MVC application using existing .NET Framework. To create a new MVC project, see ASP.NET MVC application structure. Now, I will create a App_GlobalResources folder that will have the application resource files. To create a resource file in App_GlobalResources folder, follow these steps:
I will create two resource files English and French respectively. Now, I will change the "Access Modifier" settings to "Public" as shown below:
Now I can access the resource setting in a strongly typed way as shown below in my view:
The easiest way to determine the visitor's preferred culture is to add culture="auto" and uiCulture="auto" in web.config as shown below:
<system.web>
<globalization culture="auto" uiCulture="auto"/>
However, this approach will not work when rendering a view using a different view engine or if the client setting is invalid. So I will assign the given culture in a global.asax as shown below:
protected void Application_BeginRequest(object sender, EventArgs e)
{
CultureInfo culture = new CultureInfo("fr-CA");
Thread.CurrentThread.CurrentCulture = culture;
Thread.CurrentThread.CurrentUICulture = culture;
}
This will make sure that the current thread will apply the given culture. Now I will run the project and it will render a view as shown below:
In this article, we examined how to localize ASP.NET MVC applications using existing .NET Framework.
| You must Sign In to use this message board. | |||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||
General
News
Question
Answer
Joke
Rant
Admin
Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads.
|
PermaLink |
Privacy |
Terms of Use
Last Updated: 7 Sep 2009 Editor: Deeksha Shenoy |
Copyright 2009 by Farooq Kaiser Everything else Copyright © CodeProject, 1999-2010 Web21 | Advertise on the Code Project |