PDA

View Full Version : بایند کردن اطلاعات با استفاده از entity famework



GILAS_MVC
شنبه 09 شهریور 1392, 22:10 عصر
سلام
من یه گرید دارم
چطوری میتونم با استفاده از entity framework اصلاعات رو از دیتابیس بخونم و بریزم به گرید

khokhan
شنبه 09 شهریور 1392, 22:45 عصر
سلام
من یه گرید دارم
چطوری میتونم با استفاده از entity framework اصلاعات رو از دیتابیس بخونم و بریزم به گرید
یه مدل از نوع entity framwork به پروژه تون اضافه کنین و جدول مورد نظرتون رو بهش بایند کنین
بعد در رویداد لود فرمتون اینطوری بنویسن :

kalaEntities context = new kalaEntities();
var query = from data in context.k_info
orderby data.k_id
select data;
dataGridView1.DataSource = query;

البته بایستی با نام جدول داخل مدل خودتون ست کنید

GILAS_MVC
شنبه 09 شهریور 1392, 23:07 عصر
تو entity framework چطوری میشه یه خدول رو با خودش join کرد

Direlap
شنبه 09 شهریور 1392, 23:27 عصر
مثل join معمولی میتونید عمل کنید:



var query = from c1 in contacts
join c2 in contacts
on c1.ContactID
equals c2.Contact.ContactID
select c1;

GILAS_MVC
شنبه 09 شهریور 1392, 23:34 عصر
سه تا ستون دارم Code,ParentCod,NAme حالا میخام تو گرید بجای ParentCode واسه من Name رو نمایش بده

Direlap
شنبه 09 شهریور 1392, 23:42 عصر
اگه منظورتون اینه که اون ستون نمایش پیدا نکنه
توی قسمت select اینطوری بنویس :



var query = from c1 in contacts
join c2 in contacts
on c1.ContactID
equals c2.Contact.ContactID
select new {c1.Name , c1.code};

GILAS_MVC
شنبه 09 شهریور 1392, 23:47 عصر
نه
مثلا یه ریف دارم بصورت زیر
Code=1,ParentCoed=NULL,Name=Miveha
حلا یه ردیف دیگه
Code=1001,Parentcode=1,Name=gilas
میخام تو گرید ردیف دوم رو اینطو نمایش بده
Code=1001,ParentCode=Miveha,Name=Gilas

khokhan
یک شنبه 10 شهریور 1392, 00:07 صبح
نه
مثلا یه ریف دارم بصورت زیر
Code=1,ParentCoed=NULL,Name=Miveha
حلا یه ردیف دیگه
Code=1001,Parentcode=1,Name=gilas
میخام تو گرید ردیف دوم رو اینطو نمایش بده
Code=1001,ParentCode=Miveha,Name=Gilas
اگه اشتباه نکنم منظورتون group by باستی باشه :


var refGroupQuery = (from m in context.Measurements
group m by m.Reference into refGroup
select refGroup);

Direlap
یک شنبه 10 شهریور 1392, 00:18 صبح
نه
مثلا یه ریف دارم بصورت زیر
Code=1,ParentCoed=NULL,Name=Miveha
حلا یه ردیف دیگه
Code=1001,Parentcode=1,Name=gilas
میخام تو گرید ردیف دوم رو اینطو نمایش بده
Code=1001,ParentCode=Miveha,Name=Gilas

برای اینکار بعد اینکه join رو انجام دادید باید هدرهاشون رو عوض کنید.
اینطوری:



var query = from c1 in (نام جدول)
join c2 in (نام جدول)
on c1.Parentcode
equals c2.Code
select new {c1.code , c1.ParentCode= c2.Name ,c1.Name};

GILAS_MVC
یک شنبه 10 شهریور 1392, 14:33 عصر
کاری که شما گفتی کردم این خطا رو داد Error 1 Invalid anonymous type member declarator . Anonymous type members must be declared with a member assignment, simple name or member access.

GILAS_MVC
یک شنبه 10 شهریور 1392, 14:58 عصر
اینا رو درست کردم حالا مشکل ایه که جاهایی که Parencode=NULL هس رو نشون نمیده