LINQ join and group -


इस क्वेरी को कैसे विस्तारित करें:

  सार्वजनिक शब्दकोश & lt; int, list & gt; कार्य & gt; & gt; ; FindAllCreatedTasks () (वापसी कार्य में DB.TasksInDeal में कार्यक्षेत्र में, जहां taskInDeal.Date & gt; दिनांकटाइम.Now और amp; कार्यनिष्पादन तिथि। दिनांक और दिनांक; दिनांकटाइम। अब। जोड़ेंदिन (7) समूह कार्यइनल द्वारा कार्य में मौलिक। तैयार किए गए समूह समूह में DemoClasses समूहबद्ध DemoClasses का चयन करें)। ToDictionary (जीडीसी = & gt; gdc.Key, जीडीसी = & gt; gdc.ToList ()); }  

कुछ इस तरह में:

  सार्वजनिक शब्दकोश & LT; पूर्णांक, सूची से & lt; TaskForNotification & gt; & gt; FindAllCreatedTasks () {वापसी (taskInDeal से db.TasksInDeals में taskInDeal.CreatedByUserID पर db.Users में उपयोगकर्ता में शामिल होने user.UserID के बराबर होती है जहां taskInDeal.Date & gt; DateTime.Now & amp; & amp; taskInDeal.Date & LT; DateTime.Now.AddDays ( 7) ग्रुप कार्यसमूह द्वारा कार्यकाल में डिलीट करें.संयोजितब्यूयूएसआईआरआईडी समूह मेंडमो क्लासेस में नई टास्कफ़ोर नोटिफिकेशन का चयन करें {ईमेल = यूज़र.एमेल, टास्क इनडाइलफिल्ड 1 = टास्कइनियाल। टास्क इनडिअलफिल्ड 1, टास्क इनडाइलफिल्ड 2 = टास्कइनियल। टास्क इनडिअलफिल्ड 2, टास्क इनडाइलफिल्ड 3 = टास्कइनियाल। टास्क इनडाइलफिल्ड 3, ...}) .ऑक्साइड (जीडीसी = & gt; Gdc.Key, gdc = & gt; gdc.ToList ()); }  

  // डेट लॉजिक अप करें, डेटाबेस में नहीं। दिनांक समय अब ​​= दिनांक समय.अब दिनांकटाइम हफ्तेफ़ॉर्मनॉ = अब। जोड़ेंदिन (7); // डेटाबेस से बाहर की गई पंक्तियों को खींचें वर पंक्तियों = (taskInDeal से db.TasksInDeals जहां taskInDeal.Date & gt; अब & amp; & amp; taskInDeal.Date & LT; weekFromNow taskInDeal.CreatedByUserID पर db.Users में उपयोगकर्ता में शामिल होने नई चयन user.UserID बराबर {TaskInDeal = taskInDeal, USEREMAIL = User.Email}) .ToList (); // मेमोरी शब्दकोश में पंक्तियों को आकार दें & lt; int, सूची & lt; टास्कफ़ोर नोटिफिकेशन & gt; & gt; परिणाम = (पंक्तियों में पंक्ति से कार्य फोरनोटिफिकेशन = नया टास्कफ़ोर नोटिफिकेशन {ईमेल = पंक्ति.यूसरईईमेल, टास्क इनडाइलफिल्ड 1 = पंक्ति.काक अंतराल। टास्क इनियालफिल्ड 1, टास्कइनियलफिल्ड 2 = पंक्ति। टास्कइनियाल। टास्क इनलाइनफिल्ड 2, टास्क इनडालफिल्ड 3 = पंक्ति। टास्क इनलाइन। टास्क इनडालफिल्ड 3, ...} समूह कार्यफॉररीफिकेशन row.TaskInDeal.CreatedByUserID // एक के बिना "में", द्वारा समूह क्वेरी समाप्त होता है) .ToDictionary। (छ = & gt; g.Key, छ = & gt; g.ToList ());  

जब आप समूह, यह ध्यान में रखें। एसक्यूएल के समूह में केवल चाबियाँ और समुच्चय हैं LINQ में समूह की कुंजी, समुच्चय और तत्व हैं! यदि आप समूहों के लिए डेटाबेस से पूछते हैं, और फिर तत्वों के लिए पूछें - एसक्यूएल आपको एक ही क्वेरी में उन तत्वों के साथ प्रदान नहीं कर सका। आप समूह की कुंजी को एक फिल्टर के रूप में स्वतः बार-बार दोबारा पुनः पूछताछ करेंगे।


Comments