PDA

View Full Version : سوال: تغییر نام ستون ها در Linq To Sql



علیرضا حسن زاده
شنبه 22 مرداد 1390, 17:09 عصر
سلام
وقتی یه کلاس مدل ایجاد شده توسط Linq To Sql رو به عنوان DataSource به DataGridView میدیم اطلاعات درست نمایش داده میشه
سوال من اینه که چطوری می تونم نام ستون ها رو تغییر بدم(توی Linq To Sql)؟ تا نام ستونها GridView هم فارسی نمایش داده بشه؟

Program.net
جمعه 28 مرداد 1390, 13:47 عصر
ستون گرید رو از نوع بایند تعریف کن و هر کدوم رو به فیلد مربوط به خودش بایند کن و هدر مربوطه رو با فارسی بنویس

البته اینجوری هم میشه:


var query =from t in dc.test select new
{
نام = t.Name
آدرس=t.adress
};


البته این همون select as هستش که اگه space بین کلمات فارسی قرار بدی ازت error می گیره

panahgah
یک شنبه 08 آبان 1390, 10:45 صبح
ستون گرید رو از نوع بایند تعریف کن و هر کدوم رو به فیلد مربوط به خودش بایند کن و هدر مربوطه رو با فارسی بنویس

اگه لطف كنيد بيشتر توضيح بدهيد ؟

hf1988
یک شنبه 08 آبان 1390, 11:36 صبح
دوست عزیر یه بحثی وجود داره به نام anonymouse type که در واقع یک تایپ نا شناخته هستش وقتی مثلا میگیم

from s in MyTable select new {name =s.name ,LastName =s.lastName} یعنی یک type ناشناخته ایجاد کن بهش 2 تا property به نام های name و LastName بده بعد مقادیر اون 2 تا property رو برابر s.name و s.lastName قرار بده . حالا اگه این کارو نکنیم و این query رو اینجوری بنویسیم .
from s in MyTable select s.name و این query رو به datasource یه گرید نسبت بدیم اگه اشتباه نکنم فقط یک ستون نمایش داده میشه به نام lenght که در واقع دلیلش هم اینه که گرید میره اولین پراپرتی از کلاس string به نام lenght رو نمایش میده چون میبینه type مربوط به name از نوع string هست .

steghlalt
چهارشنبه 15 آذر 1391, 10:32 صبح
واقعا مطلب مفیدی بود ممنون

ncs2008
پنج شنبه 16 آذر 1391, 12:57 عصر
البته این همون select as هستش که اگه space بین کلمات فارسی قرار بدی ازت error می گیره

دوستان اگر کسی تونسته این مشکل را در LINQ برطرف کنه لطفا راهنمایی کنه.من میخوام نام ستون را به نام کاربری که بین نام و کاربری فاصله است را به جای ستون قرار دهم.

mmhf6380
پنج شنبه 31 اردیبهشت 1394, 18:59 عصر
نمیدونم تا حالا جواب رو پیدا کردین یا نه !!! اما دو تا راه حل برای این مشکل براتون میگذارم :

1- استفاده از کارکتر _ بین کلمات فارسی در کد anonymous type یک Linq Querry

مثال :
var dsNews = (from n in Context.News
join ng in Context.NewsGroups on n.GroupId equals ng.Id
join s in Context.Staffs on n.StaffId equals s.SId
select new
{
کد_خبر = n.NId,
تاریخ_انتشار= n.Date,
تیتر = n.Titr,
گروه_اخبار = ng.Name,
نویسنده = s.FName + " " + s.LName,
تعداد_بازدید = n.Counter,
برگزیده = n.Priority,
رتبه = n.Rating,
وضعیت = n.Active
}).ToList();

2-در ابتدا در sql یک view اونطور که میخواین بسازید و بعدا با Entity Model تو برنامه به یک Grid متصلش کنید و ...

موفق باشد /...