इकाई फ्रेमवर्क कई से कई प्रश्न - vb.net, इकाई-ढांचे, linq-to-entities, इकाई-ढांचे -6

मैं एंटिटी में एक क्वेरी लिखने के लिए संघर्ष कर रहा हूँफ्रेमवर्क जो मेरे द्वारा स्थापित किए गए कई संबंधों से संबंधित है। मैं क्या करना चाहता हूं कि टेबलए से आइटम प्राप्त करें जो टेबलबी के साथ एक संबंध से संबंधित हैं और एक ही समय में परिणामों से जानते हैं कि कौन सा संबंध सही मिलान था।

उदाहरण के लिए, यदि मैं छात्रों और पाठ्यक्रमों का उपयोग कर रहा हूं,मैं उन सभी छात्रों की तलाश करना चाहता हूं जो पाठ्यक्रम के एक सेट में हैं और केवल उन्हीं पाठ्यक्रमों को वापस करते हैं जो मिलान करते हैं। मैं विशेष रूप से छात्रों के साथ क्वेरी शुरू करना चाहता हूं, क्योंकि छात्रों की सूची प्राप्त करने के लिए पाठ्यक्रम नेविगेशन संपत्ति को देखकर इसे आसानी से पूरा किया जा सकता है।

मैं जो चाहता हूं, वह छात्रों की एक सूची है जहां प्रत्येक छात्र में मेरी क्वेरी में केवल पाठ्यक्रम का सेट है (प्रत्येक पाठ्यक्रम छात्र नहीं ले रहा है)।

नीचे जैसा कुछ करीब है, मुझे मिल गयाछात्रों की सही सूची, लेकिन पाठ्यक्रमों के लिए नेविगेशन संपत्ति सभी पाठ्यक्रमों को दिखाती है, मेरी क्वेरी से नहीं। मैं यदि संभव हो तो फिर से प्रश्न करने से बचना चाहता हूं, और मुझे उन छात्रों / पाठ्यक्रमों के सेट को वापस करना चाहिए जिनकी मुझे आवश्यकता है।

Dim listOfStudents = From s In Students
From c In s.Courses
Where listOfCourseIds.Contains(c.CourseId)

उत्तर:

जवाब के लिए 0 № 1

यदि दोनों के बीच कोई जंक्शन तालिका नहीं है, तो कोशिश करें:

from s in dc.Students
from c in s.Courses
where c.CourseID == courseID
select s;

यदि इकाई में दोनों के बीच एक जंक्शन तालिका है, तो प्रयास करें:

from s in dc.Students
from e in s.StudentsCourses
where e.Course.CourseID == courseID
select s;