PDA

View Full Version : سوال: ذخیره اطلاعات در برنامه دو زبانه



Roya Rayane
سه شنبه 18 تیر 1387, 08:32 صبح
سلام.
دوستان من یک برنامه دارم با بانک SQL که قابلیت تغییر به دو زبان فارسی و انگلیسی رو داره.
سوال اینجاست که من می خوام وقتی زبان فارسی هست اطلاعاتم رو توی جدول فارسی ذخیره کنم ونمایش بدم و انگلیسی هم به همین شکل. بعضی از دوستان پیشنهاد دادند که برای هر زبان یک جدول داشته باش که کار درستی نیست. حالا فرض کنید فردا خواستیم سه تا زبان دیگه هم اضافه کنیم پس بیایم سه تا جدول دیگه هم درست کنیم! حالا اگه برنامموم فقط با یک جدول کار کنه شاید شاید باید یک کار غیر استاندارد جمع وجور کرد.
حالا از دوستان می خواستم که راه حلتون رو بگید. و بگید که چطوری انجامش بدم.
خیلی ممنون.

Sajjad.Aghapour
سه شنبه 18 تیر 1387, 10:53 صبح
خوب می تونید زبان برنامتون رو بگیرید و با توجه به اون داده ها رو در جدول مربوطه ذخیره کنید.به صورت زیر....


string lang = InputLanguage.CurrentInputLanguage.LayoutName;

که در اینجا lang دو مقدار US و Farsi رو برمیگردونه .

shayesteh_bh
سه شنبه 18 تیر 1387, 11:29 صبح
اگه درست متوجه شده باشم شما فيلدهايي داريد كه هم مقدار فارسي و هم مقدار انگليسي مي گيرند. در اين صورت اگر فيلدهاي دو زبانه را از نوع nvarchar بگيريد مشكلي براي شما در ذخيره اطلاعات فارسي پيش نمي ايد . مقادير انگليسي هم كه مشكلي با nvarchar ندارند.

naeeme
سه شنبه 18 تیر 1387, 13:23 عصر
اگه درست متوجه شده باشم شما فيلدهايي داريد كه هم مقدار فارسي و هم مقدار انگليسي مي گيرند. در اين صورت اگر فيلدهاي دو زبانه را از نوع nvarchar بگيريد مشكلي براي شما در ذخيره اطلاعات فارسي پيش نمي ايد . مقادير انگليسي هم كه مشكلي با nvarchar ندارند.

و اگه براتون مهم هم باشه که اطلاعات به چه زبانی هست می تونید یه فیلد هم داشته باشید که زبان رو براتون تعیین کنه! البته زیاد ضروری به نظر نمی رسه
فقط باید دقت کنید که در ورود اطلاعاتتون یه استاندارد واحد در نظر بگیرین که در کوئری ها دچار مشکل نشین. مثلا در مورد حرف ی و ي ، یکی از این دو در بانک باشه نه هر دو!