SIGN UP MEMBER LOGIN:    
ARTICLE
Reader Level:
Download Files:
 

Introduction

Globalization is the process of designing and developing applications which can be adapted to different languages. Globalization is the process of designing and developing a software product that function for multiple cultures.

If you want that your website will accessible in several languages in different regions you should globalize it.

Background

Globalization is very efficient functionality that you can give to your website so that it can be adapted to different languages and regions.
A very good example you can see is Google home page. There are different languages options are given below you can select one language and the whole site would adapt for that particular language.

How would you Globalize you website in ASP.NET

Deign your page

Start visual studio 2005, go for a new website name it 'GloblizationEx'. First design your website like a sample I have given below. Take 3 link buttons and a label. Change the text property of label to 'Hello user let's learn Globalization' and change the text property of three link buttons to French, German, Russian.

Glob1.gif

Now make click event of LinkButton1 by double clicking on it. Go to LinkButton2 property select event tab, select 'LinkButton1_Click' for click event. Repeat this for LinkButton3.

Add resources files

Now you have to add resources file to your website, but first add a New Folder to your website and named it 'resources' for this just go to solution explorer right click on root and select 'New folder' now right click to this resources folder and select 'Add New Item..' option, Add New Item dialog box will appears, select 'Resource File' and named it 'strings.fr-FR.resx'. A message box will appear click 'No' as given below.

Glob2.gif

Now a screen appears you have to enter Name and value for your resource file.

Enter 'msg' for Name and 'bonjour utilisateur apprenons globlization' for value field. Don't worry, this msg is only French conversion your message that you had given at your home page. Repeat these steps for German and Russian, file name will be 'strings.de-DE.resx' and 'strings.ru-RU.resx' respectively. You can give value field for German and Russian as 'hallo Benutzer lets lernen globlization' and '@ hallo lernen globlization' respectively. But Name field will be the same 'msg'. Save all. Sample is given below.

Glob3.gif

Note: You can translate your messages use Google More>>Translate tab.

Generate '.resources' Files

Now you have to generate '.resources' file for this you have to open visual studio command prompt, you can find it at 'visual studio 2005>> Visual studio Tools' menu. As you start visual studio command prompt, cmd screen appears. You have to locate 'resources' folder, like if you are creating your website in C drive with name 'GloblizationEx', you have to locate like 'c:\Globlization\resources' now type command 'resgen strings.fr-FR.resx' for French resx file. Do it for German and Russian as 'resgen strings.de-DE.resx' and 'resgen strings.ru-RU.resx' respectively.

Glob4.gif

You can notice that .resources files are added to 'resources' folder.

Use Following Code

You should use following namespaces.

using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Resources;
using System.IO;
using System.Globalization;

Now type the following code to click event (LinkButton1_Click) of LinkButton1.

protected void LinkButton1_Click(object sender, EventArgs e)
    {
        string lanName="";
        LinkButton lnkBtn=(LinkButton)sender;

        switch (lnkBtn.ID)
        {
            case "LinkButton1":
                lanName = "fr-FR";
                break;
            case "LinkButton2":
                lanName = "de-DE";
                break;
            case "LinkButton3":
                lanName = "ru-RU";
                break;
        }
        System.Resources.ResourceManager rm = ResourceManager.CreateFileBasedResourceManager("strings", Server.MapPath("resources") + Path.DirectorySeparatorChar, null);
        CultureInfo cinfo = new CultureInfo(lanName);
        Label1.Text = rm.GetString("msg", cinfo);

    }

Now just debug your website and click on 'French'/'German'/'Russian' link to change your welcome message.

Glob5.gif

Login to add your contents and source code to this article
share this article :
post comment
 

THANK YOU!

Posted by Brijesh Kumar Apr 27, 2011

This is a nice article.

Posted by Anil Kumar Apr 27, 2011
Nevron Gauge for SharePoint
Become a Sponsor
PREMIUM SPONSORS
  • Finally – a virtual platform that delivers next-generation Windows Server 2008 Hyper-V virtualization technology from a managed hosting partner you can truly depend on. Visit www.maximumasp.com/max for a FREE 30 day trial. Hurry offer ends soon. Climb aboard the MaxV platform and take advantage of High Availability, Intelligent Monitoring, Recurrent Backups, and Scalability – with no hassle or hidden fees. As a managed hosting partner focused solely on Microsoft technologies since 2000, MaximumASP is uniquely qualified to provide the superior support that our business is built on. Unparalleled expertise with Microsoft technologies lead to working directly with Microsoft as first to offer IIS 7 and SQL 2008 betas in a hosted environment; partnering in the Go Live Program for Hyper-V; and product co-launches built on WS 2008 with Hyper-V technology.
    ceTE software specializes in components for dynamic PDF generation and manipulation. The DynamicPDF™ product line allows you to dynamically generate PDF documents, merge PDF documents and new content to existing PDF documents from within your applications. Visit DynamicPDF here
Become a Sponsor