PDA

View Full Version : سوال: نحوه نوشتن select در linq



سیروس مقصودی
شنبه 02 اردیبهشت 1396, 12:03 عصر
با سلام
من select زير را چگونه ميتوانم با linq بنويسم



select k.mon1,k.desc_mon1,m.mon2,m.desc_mon2,m.cost

, (select c.desc_cost from hf_cost c where m.cost=c.cost) as desc_cost

from hf_kol k,hf_moein m

where k.mon1=m.mon1



لازم به توضيح است در select مذكور و در ارتباط با جدول cost بدين صورت است كه ليست مذكور اگر در جدول cost موجود باشد شرح Cost را نمايش دهد و اگر موجود نباشد شرح را بصورت null نمايش دهد .
من عمل join را براي جدولهاي hf_kol , hf_moein انجام ميدهم ولي نميتوان عمل join را با جدول cost انجام دهم اگر از join براي جدول cost انجام دهم ليستي را كه نمايش ميدهد شامل costهايي است كه در جدول Cost موجود ميباشد و costهايي كه موجود نيست را نمايش نميدهد . من ليست مورد نظرم را با select بالا ميتوانم تهيه كنم ولي نحوه نوشتن آنرا با linq نميدانم . لطفا مرا راهنمايي كنيد.
با تشكر ...

سیروس مقصودی
جمعه 08 اردیبهشت 1396, 13:29 عصر
با سلام
تا حالا كسي چنين selectي ننوشته است ؟

raha raad
سه شنبه 23 خرداد 1396, 09:17 صبح
سلام.
به نظرم کاری رو که می خواید انجام بدید، توی _دو تا تابع که بتونن پارامتر where دریافت کنن_ تقسیم کنید و در جای مورد نظر با صدا زدن دو تابع با شروط مورد نظرتون ازشون استفاده کنید. مثلا:

public TEntity Get(Expression<Func<TEntity, bool>> @where()
{
return Dbset.Where(where).FirstOrDefault();
}