PDA

View Full Version : سوال: ساخت مدل EntityFrameWork از یک Query به جای Table



OmMiD_MtWo
جمعه 11 مهر 1393, 22:11 عصر
سلام دوستان

میخواستم بپرسم چه جوری میتونم از یک پرس و جو که تعدادی فیلد رو برمیگردونه یک مدل EntityFrameWork ساخت؟ در حقیقت به جای این که از یک یا چند جدولِ موجود در پایگاه داده مدل بسازم، یک مدل از یک پرس و جو بسازم که تعدادی فیلد از جدول های مختلف برمیگردونه؟

چون در برنامه یک GridView دارم که میخوام نتیجه ی پرس و جو رو داخلش بریزم.

ممنون میشم راهنمایی کنید. در پُست قبلی هم متاسفانه کسی جواب نداد. :ناراحت:

Mahmoud.Afrad
جمعه 11 مهر 1393, 22:56 عصر
میتونی پرس و جو رو با linq پیاده کنی. در اصل ef برای همین کاربرد هست.
کوئری رو تبدیل به linq کن و ازش استفاده کن. اگر نمیتونی کوئری و ساختار جدولها رو بزار تا تبدیل کنیم.

OmMiD_MtWo
شنبه 12 مهر 1393, 09:09 صبح
دوست عزیز، این Query مورد نظر من هست که میخوام به Linq تبدیل کنم :



SELECT
ITEM.ID_ITM AS Shomare,
ITEM.NM_ITM AS Sharh,
FA_NAME.DE_ITM_TSL AS name,
ISNULL(Price.MO_PRC_NW,'0')AS price

FROM AS_ITM ITEM

inner JOIN I8_ITM FA_NAME
ON ITEM.ID_ITM = FA_NAME.ID_ITM
AND FA_NAME.ID_LGE = 'fa-IR'

inner JOIN
(
select x.ID_ITM,y.MO_PRC_NW from ZQ_PU_ITM_SL_PRC_EX x
inner join MA_ITM_PRN_PRC_ITM y
ON X.ID_ITM=Y.ID_ITM
AND X.ID_EV=Y.ID_EV
INNER JOIN (
select MAX(ZQ_TS_EV) AS MAXX,X.ID_ITM from ZQ_PU_ITM_SL_PRC_EX x inner join MA_ITM_PRN_PRC_ITM y
ON X.ID_ITM=Y.ID_ITM
AND X.ID_EV=Y.ID_EV
WHERE GETDATE ()>=TS_PR_EF AND ZQ_FL_ON_SL =0 AND x.ZQ_SC_ST = 'AC' AND x.ID_STRGP=6 and TS_PR_EF>'2014-10-01'
GROUP BY X.ID_ITM

) IDEV
ON x.ID_ITM = IDEV.ID_ITM
and x.ZQ_TS_EV = idev.MAXX
) as Price
on item.id_itm = Price .ID_ITM

Mahmoud.Afrad
شنبه 12 مهر 1393, 18:59 عصر
اسکریپت جداول رو یادت رفت. در ضمن به زبان فارسی بگو چه خروجی ای مد نظرت هست تا اگر راه حل بهتری داشت بیان بشه.
منتظر اسکریپت جداول هستم. ارتباط بین جدولها رو هم بیان کن.