PDA

View Full Version : مقدار دهی فارسی به DictioneryCookie؟؟؟؟



ab_ir_007
شنبه 13 اسفند 1390, 19:24 عصر
با سلام به همه دوستان
یه مشکلی برام پیش اومده و اونم اینه که وقتی میخوام به یه کوکی مقدار بدم اگه حروف فارسی باشه مشکل ایجاد میشه، کدم رو براتون میزارم تا اگه ممکنه راهنمایی کنید....

System.Web.

HttpCookie _cookie = new HttpCookie("UserInformation");

_cookie.Values[

"UserID"] = _rowUserInfo.UserID.ToString();

_cookie.Values[

"Fullname"] = "تست";

_cookie.Expires = System.

DateTime.Now.AddMinutes(10);

Response.Cookies.Add(_cookie);

مشکل دقیقا جایی هست که مقدار "تست" میخواد پاس بشه به Fullname

fakhravari
شنبه 13 اسفند 1390, 20:27 عصر
نه باید جواب بده
protected void Button1_Click(object sender, EventArgs e)
{
HttpCookie testCokkie = new HttpCookie("ExampleCookie");
testCokkie.Expires = DateTime.Now.AddDays(5);
testCokkie["Name"] = "محمد حسین فخراوری";
testCokkie["City"] = "بوشهر";
Response.Cookies.Add(testCokkie);
}
protected void Button2_Click(object sender, EventArgs e)
{
HttpCookie exampleCookie = Request.Cookies["ExampleCookie"];

Label1.Text = exampleCookie["Name"];
Label2.Text = exampleCookie["City"];
}

توی کنفیگ بزار
<globalization fileEncoding="utf-8" requestEncoding="utf-8" responseEncoding="utf-8" culture="fa-IR" uiCulture="fa-IR" />

ab_ir_007
شنبه 13 اسفند 1390, 22:53 عصر
جناب فخرآوری
ممنون از پاسختون ، اما بازم نشد حتی دقیقا کد شما رو نوشتم اما نشد ، دیباگ کردم ، دیدم موقع مقدار دهی به کوکی "Name" مقدار زیر رو میگیره نمیدونم چرا....
83647


نه باید جواب بده
protected void Button1_Click(object sender, EventArgs e)
{
HttpCookie testCokkie = new HttpCookie("ExampleCookie");
testCokkie.Expires = DateTime.Now.AddDays(5);
testCokkie["Name"] = "محمد حسین فخراوری";
testCokkie["City"] = "بوشهر";
Response.Cookies.Add(testCokkie);
}
protected void Button2_Click(object sender, EventArgs e)
{
HttpCookie exampleCookie = Request.Cookies["ExampleCookie"];

Label1.Text = exampleCookie["Name"];
Label2.Text = exampleCookie["City"];
}

توی کنفیگ بزار
<globalization fileEncoding="utf-8" requestEncoding="utf-8" responseEncoding="utf-8" culture="fa-IR" uiCulture="fa-IR" />

fakhravari
یک شنبه 14 اسفند 1390, 00:04 صبح
برای من درسته.
<globalization fileEncoding="utf-8" requestEncoding="utf-8" responseEncoding="utf-8" culture="fa-IR" uiCulture="fa-IR" />
چک کردین.
فونت سیستم برسی کنید.
protected void Button4_Click(object sender, EventArgs e)
{
string str1 = "محمد حسین فخراوری", str2 = "بوشهر";
HttpCookie testCokkie = new HttpCookie("ExampleCookie");
testCokkie.Expires = DateTime.Now.AddDays(5);

testCokkie["Name"] = Server.HtmlEncode(str1);
testCokkie["City"] = Server.HtmlEncode(str2);
Response.Cookies.Add(testCokkie);
}
protected void Button5_Click(object sender, EventArgs e)
{
HttpCookie exampleCookie = Request.Cookies["ExampleCookie"];
Label2.Text = Server.HtmlEncode(exampleCookie["Name"].ToString());
Label3.Text = Server.HtmlEncode(exampleCookie["City"].ToString());
}

ab_ir_007
یک شنبه 14 اسفند 1390, 00:35 صبح
با سلام مجدد
آقای فخر آوری مشکل من اینجا فقط وقتیه که یک instance از کوکی درست میکنم و میخوام Subkeys رو اضافه و مقدار دهی کنم (cookieInstance.values["subkey"]="یه مقدار فارسی") حالا اگه همین جا این مقدار فارسی به "some english value" تغییر کنه همه چی درست کار میکنه ، تا اینجا نتیجه میگیریم که مشکل احتمالا از encoding باید باشه ، من کدی که فرمودین رو تو کانفیگ گذاشم اما بازم فرقی نکرد. ضمنا اینم بگم اگه از subkeys استفاده نکنم و مستقیم کوکیها رو در کالکشن درست کنم این مشکلات وجود نداره .
به نظر دوستان ممکنه این باگ 2010 باشه؟


برای من درسته.
<globalization fileEncoding="utf-8" requestEncoding="utf-8" responseEncoding="utf-8" culture="fa-IR" uiCulture="fa-IR" />
چک کردین.
فونت سیستم برسی کنید.
protected void Button4_Click(object sender, EventArgs e)
{
string str1 = "محمد حسین فخراوری", str2 = "بوشهر";
HttpCookie testCokkie = new HttpCookie("ExampleCookie");
testCokkie.Expires = DateTime.Now.AddDays(5);

testCokkie["Name"] = Server.HtmlEncode(str1);
testCokkie["City"] = Server.HtmlEncode(str2);
Response.Cookies.Add(testCokkie);
}
protected void Button5_Click(object sender, EventArgs e)
{
HttpCookie exampleCookie = Request.Cookies["ExampleCookie"];
Label2.Text = Server.HtmlEncode(exampleCookie["Name"].ToString());
Label3.Text = Server.HtmlEncode(exampleCookie["City"].ToString());
}