السلام عليكم ورحمه الله وبركاته
لقد بحثت منذ فتره عن كيفية عمل موقع متعدد اللغات ولقد وجدت الحل الحمد الله في الموقع
ولكن بعد التطبيق ظهرت لدي مشكلة و تفاصيلها كالأتي:
أولا : انا عملت زر عربي وكتبت تحته هذا الكود:
string culture = Request.Form["ar_btn"];
if (culture == "Arabic")
culture = "ar-EG";
if (string.IsNullOrEmpty(culture))
culture = "ar-EG";
if (culture != "Auto")
{
System.Globalization.CultureInfo ci = new System.Globalization.CultureInfo(culture);
System.Threading.Thread.CurrentThread.CurrentCulture = ci;
System.Threading.Thread.CurrentThread.CurrentUICulture = ci;
}
Session.Remove("x");
Session.Add("x", "1");وعملت زر أنجليزي وكتبت تحته هذا الكود:
string culture = Request.Form["en_btn"];
if (culture == "English")
culture = "en-US";
if (string.IsNullOrEmpty(culture))
culture = "en-US";
if (culture != "Auto")
{
System.Globalization.CultureInfo ci = new System.Globalization.CultureInfo(culture);
System.Threading.Thread.CurrentThread.CurrentCulture = ci;
System.Threading.Thread.CurrentThread.CurrentUICulture = ci;
}
Session.Remove("x");
Session.Add("x", "2");وكتبت
protected override void InitializeCulture()
{
string culture = Request.Form["Button2"];
if (culture == "Arabic")
culture = "ar-EG";
else if (culture == "English")
culture = "en-US";
else
{
culture = "en-US";
}
if (Session["x"] != null)
{
if (Session["x"].ToString() == "1")
culture = "ar-EG";
else if (Session["x"].ToString() == "2")
culture = "en-US";
}
System.Globalization.CultureInfo ci = new System.Globalization.CultureInfo(culture);
System.Threading.Thread.CurrentThread.CurrentCulture = ci;
System.Threading.Thread.CurrentThread.CurrentUICulture = ci;
}أتنفذت بنجاح ولكن هناك مشكله وهي أن بعد فتره من الوقت ال session بيضيع ولو أنا مختاره مثلا عربي بعد فتره ال session بيطير
انا كنت محتاجه طريقه تانية بدل ال session
انا سمعت عن ال Cookies ولكن بحثت عنه ولم اعرف كيف يستخدم
ولكم جزيل الشكر