PDA

View Full Version : ایجاد دو view در EntityFramework و سی شارپ



king_programmer
سه شنبه 29 اردیبهشت 1394, 01:15 صبح
با سلام و احترام؛
من میخوام لغات دو کتاب رو از یک جدول باهم مقایسه کنم.یعنی بگم که لغات مشترک از کتاب ها هر کدام در یک ردیف و لغات موجود در کتاب اول که در کتاب دوم نیست و لغات موجود در کتاب دوم که در کتاب اول نیست را جمعا به صورت گروه شده در گرید ویو نشون بده.
کتاب اول = A
کتاب دوم = B
یعنی (A اشتراک B) اجتماع (A - B) اجتماع (B – A)
این کار رو میخام با استفاده از EntityFramework(lambda انجام بدم.
ستون های جدولم هم به این صورت هست.

آی دی کتاب که اشاره به کتاب میکنه.
نام لغت که باید برای هر کتاب بررسی بشه و به صورت گروپ بای به گرید ویو ریخته بشه.
ممنون میشم راهنماییم کنید.

king_programmer
سه شنبه 29 اردیبهشت 1394, 22:48 عصر
یعنی کسی نیست که جواب سوال رو بدونه؟ ممنون میشم اگه کسی راهنماییم کنه.

RmeXXXXXXXXX
چهارشنبه 30 اردیبهشت 1394, 14:36 عصر
یجوری میگی یعنی هیچ کس نیست که .... راه حل شما در استفاد از join جهت دار است. میتونی از TSQL هم استفاده کرده و جداول رو در هم ضرب کنی.
http://www.dotnettips.info/post/236/%D9%85%D9%82%D8%A7%DB%8C%D8%B3%D9%87-%D8%B1%DA%A9%D9%88%D8%B1%D8%AF%D9%87%D8%A7%DB%8C-%D8%AF%D9%88-%D8%AC%D8%AF%D9%88%D9%84

http://www.dotnettips.info/post/1186/%D8%AF%D8%B3%D8%AA%D9%87-%D8%A8%D9%86%D8%AF%DB%8C-%D8%B3%D8%B7%D8%B1-%D9%87%D8%A7%DB%8C-%D8%AC%D8%AF%D9%88%D9%84

king_programmer
پنج شنبه 31 اردیبهشت 1394, 00:25 صبح
ممنون از پاسخ شما.ولی فکر کنم منظورم رو متوجه نشدید.بزارید یه جور دیگه بگم.من میخام دستور زیر رو در entity framework پیاده کنم.


SELECT View_1.cnt1, View_1.WordText AS WordText1, View_1.WordTypeID AS WordTypreID1, View_2.cnt2, View_2.WordText AS WordText2, View_2.WordTypeID FROM View_1 FULL OUTER JOIN View_2 ON View_1.WordTypeID = View_2.WordTypeID AND View_1.WordText = View_2.WordText
خودم این دستور رو نوشتم.ولی نمیدونستم چطوری در join دوفیلد را مورد بررسی قرار بدم و فقط یکی از فیلدها رو نوشتم.

var q = (from doc1 in documentDetail1
join doc2 in documentDetail2 on doc1.WordText equals doc2.WordText
select new { wt1=doc1.WordText, wti1=doc1.WordTypeID,cnt1=doc1.cnt1, wt2=doc2.WordText, wti2=doc2.WordTypeID,cnt2=doc2.cnt1 });

king_programmer
جمعه 01 خرداد 1394, 01:00 صبح
من میخام که دستور full outer join رو بر روی دو فیلد پیاده کنم.یه سری منبع انگلیسی پیدا کردم ولی چیزی نفهمیدم.از دوستان کسی میتونه دقیقا دستور زیر رو پیاده کنه؟



SELECT * FROM table_1 FULL OUTER JOIN table_2 ON table_1 .column1 = table_2 .column1 and table_1 .column2 = table_2.column2

davidrobert
جمعه 01 خرداد 1394, 08:25 صبح
من تو این پروژه روش join کردن رو ساختم و فایلش رو قرار دادم که چطور بین جداول عمل join رو انجام بدید.
http://barnamenevis.org/showthread.php?495397-join-%D8%B3%D9%87-%D8%AC%D8%AF%D9%88%D9%84-%D8%AF%D8%B1-Entity-Framework&p=2216742&viewfull=1#post2216742
و مسئله اصلی در ویو ساختن در دیتابیس باعث میشه که میخواهید اطلاعاتی که نمایش بدید که به روز شده هستش با باز و بسته شدن فرم انجام شود که خیلی بد هستش که با کد نویسی عمل ویو رو ساختم از چند جدوال که سریع وقتی اطلاعات به روز میشه یا آپدیت میشه سریع نشان میده.

king_programmer
جمعه 01 خرداد 1394, 22:18 عصر
davidrobert (http://barnamenevis.org/member.php?251829-davidrobert) عزیز.من پروژه شما رو دیدم.شما کار خاصی انجام ندادید.

king_programmer
شنبه 02 خرداد 1394, 22:18 عصر
کسی پاسخ سوال منو نمیدونه؟ اگه لازمه که اطلاعات جدولم رو توضیح بدم.من با SqlDataCommand جوابمو گرفتم .فقط میخوام با Entity Framework این کد رو پیاده کنم.