PDA

View Full Version : مشکل در درج اطلاعات در گریدویو



y_zaree1369
جمعه 01 دی 1391, 09:46 صبح
سلام دوستان


من از طریق یه تکست باکس اطلاعاتی که فارسی هست را در sql ذخیره میکنم ولی وقتی از طریق گریدویو نمایش داده میشه به صورت علامت سوال نمایش میده چطوری این مشکل برطرف کنم ؟
اطلاعاتی که از قبل از طریق sql server وارد دیتابیس کردم درست نمایش میده

danialafshari
جمعه 01 دی 1391, 10:07 صبح
سلام دوست عزیز
فقط در گرید ویو اینطوره ؟
در sql server چطور ؟
برای تست خصوصیت RowDefaultSellStyle رو browse کن و font رو بزار رو Tahoma و از فارسی بودن Language ویندوز مطمئن شو

veniz2008
جمعه 01 دی 1391, 10:10 صبح
سلام. این به علت رعایت نشدن یونیکد هست.این نکات رو رعایت کنید:
1. نوع فیلدهای فارسی رو حتما nvarchar بگیرید.
2. قبل از ورودی ها (ورودی ها مثل textbox یا combobx و ... ) از حرف N بصورت زیر استفاده کنید:

SqlCommand cmd = new SqlCommand("insert into student(name,family)values(N'"+textBox2.Text+"' ,N'"+textBox3.Text + "')",con);
ولی اکیدا" توصیه میکنم از سبک دستورات بالا استفاده نکنید چون براحتی برنامه تون هک میشه. برای رفع این مشکل از پارامترها استفاده کنید. بصورت زیر :

SqlCommand cmd = new SqlCommand("insert into student(name,family)values(@nam,@famil)", conn);
cmd.Parameters.AddWithValue("@nam", textBox2.Text);
cmd.Parameters.AddWithValue("@famil", textBox3.Text);
موفق باشید.