1. Create a new base page class inheriting from System.Web.UI.Page
2. Imlement following on your new class
protected override void InitializeCulture()
{
String lang;
if (Session["SelectedCulture"] != null)
lang= Session["SelectedCulture"].ToString();
else
lang ="en";Thread.CurrentThread.CurrentUICulture = new CultureInfo(lang);
Thread.CurrentThread.CurrentCulture = CultureInfo.CreateSpecificCulture(lang);
}
3. All your aspx pages must be derived from this newly implemented base page class
3. On your login page create a new procedure that sets Session["SelectedCulture"] based on the input received from the user such as following;
protected bool SetLanguage(String newCulture)
{
if ( !ValidLanguage(newCulture)) -- there is no builtin ValidLanugage method, you must implement it to check the user input
return false;
Session["SelectedCulture"]=newCulture;
return true;
}
4. Let user select language pref. from a drop down list and after selection execute the method imlemented in step 3