मैंने पहले ही एसओ के माध्यम से खोज की है और इसके लिए एक व्यावहारिक समाधान नहीं कर सका। मैं सिर्फ यह समझने की कोशिश कर रहा हूं कि लिंक से इकाइयों में एकाधिक आंतरिक जुड़ने के लिए वाक्यविन्यास क्या है। धन्यवादआप लिंक से इकाइयों में एकाधिक आंतरिक जुड़ते हैं
उत्तर
जॉन का जवाब काम करेगा, लेकिन IMHO using join in LINQ to Entities is usually wrong, क्योंकि यह आपके मॉडल में कोड डुप्लिकेट करता है। मैं L2E में एक बहुत सरल तरीके से जॉन की क्वेरी पुनर्लेखन कर सकते हैं:
var query = from customer in db.Customers
from order in customer.Orders
from product in order.Products
from info in product.Info
select new
{
customer.Name,
info.BriefDescription
}
टाइपिंग के बारे में 50% और डुप्लिकेट किए गए कोड का 0% है यही कारण है कि। ध्यान दें कि आपके रिश्तों को पहले से ही आपके डीबी में और आपके मॉडल में परिभाषित किया गया है। क्या आप वास्तव में लिखने वाली प्रत्येक क्वेरी में उन्हें फिर से डुप्लिकेट करना चाहते हैं, और जब आप अपने मॉडल को दोबारा बनाते हैं तो अपने प्रश्नों को तोड़ते हैं?
ठीक है, मैं विशेष रूप से संस्थाओं को LINQ पता नहीं है, लेकिन सामान्य LINQ वाक्यविन्यास होगा:
var query = from customer in db.Customers
join order in db.Orders on customer.ID equals order.ID
join product in db.Products on order.ProductID equals product.ID
join info in db.Info on product.InfoID equals info.ID
select new { customer.Name, info.BriefDescription };
(अर्थात सिर्फ कई join
खंड)।
अब मुझे संदेह है कि आपने पहले से ही कोशिश की है - यदि हां, तो क्या गलत हुआ?
हालांकि यह वास्तव में काम करता है, मेरा मानना है कि यह एल 2 ई के विशिष्ट मामले में शामिल होने के बजाय संबंधों का उपयोग करने के लिए बेहतर रूप है। –
इस मामले के बारे में क्या होगा जब हम कुछ दी गई जानकारी-संस्थाओं से शुरू होते हैं ('डीबी.इन्फो में जानकारी से जहां जानकारी ... उत्पाद में शामिल हों ...'), स्पष्ट रूप से लिखित जॉइन उस मामले में अधिक कुशल नहीं होंगे ? या यह ईएफ में कोई फर्क नहीं पड़ता है और ग्राहकों से ग्राहक से आदेश में ग्राहक होगा। उत्पाद से ऑर्डर। उत्पाद में जानकारी से उत्पाद। जानकारी जहां जानकारी ... 'उतनी ही कुशल हो? – j00hi
@ j00hi: आपको मूल रूप से उत्पन्न होने वाले एसक्यूएल को देखना होगा। –
- 1. स्कॉन्स के साथ, आप प्रीबिल्ट लाइब्रेरी से कैसे जुड़ते हैं?
- 2. लिंक से इकाइयों में दिनांक
- 3. स्थैतिक पुस्तकालय निर्भरताओं से कैसे जुड़ते हैं?
- 4. डायनामिक जहां लिंक से इकाइयों में
- 5. लिंक से इकाइयों को हटाएं
- 6. इकाइयों से लिंक छोड़ें() और टेक()
- 7. लिंक (इकाइयों के लिए)
- 8. इकाइयों से लिंक कई चुनिंदा क्वेरी
- 9. एकाधिक जोड़ा इकाइयों में एंटिटी फ्रेमवर्क
- 10. एसक्यूएल दो बार पंक्तियों को संसाधित करने से जुड़ते हैं
- 11. आप क्या चुनते हैं, सुरक्षित या आंतरिक?
- 12. mysql में आप दो बार एक ही टेबल पर कैसे जुड़ते हैं?
- 13. दो कंप्यूटर एनएटी के माध्यम से एक ही बाहरी पते से कैसे जुड़ते हैं?
- 14. एचओएम अपवाद एचटीएमएल इकाइयों को आंतरिक HTML
- 15. आप पैकेज में आर डेटा आंतरिक कैसे संभालते हैं?
- 16. लिंक में इकाइयों में "इन में शामिल नहीं करें" खंड
- 17. आप कैसे मेलटू बनाते हैं: लिंक (से) भाग के बिना
- 18. इकाइयों के लिए linq, जहां एक खंड में? (आंतरिक जहां)
- 19. ओओ डिजाइन - क्या आप आंतरिक संपत्तियों या निजी क्षेत्रों का आंतरिक रूप से उपयोग करते हैं?
- 20. चिपचिपा शीर्षलेख और आंतरिक लिंक
- 21. लिंक से इकाइयों/इकाई फ्रेमवर्क क्रॉस edmx "शामिल हों"
- 22. आप विजुअल स्टूडियो लिंक त्रुटियों को "डीकोड" कैसे करते हैं?
- 23. लिंक से इकाइयों का उपयोग बहुत धीमा है। टेक() विधि
- 24. लिंक एकाधिक एकाधिक जहां प्रश्न
- 25. इकाइयों के लिए लिंक और समेकित गुण
- 26. सीआरएम2011 - एसडीके 5.0.3 - लिंक से सीआरएम इकाइयों की समस्या
- 27. 'लिंक से इकाइयों का उपयोग कर'() 'वर्कअराउंड शामिल है?
- 28. लिंक से इकाइयों का समर्थन क्या करता है?
- 29. NHibernate: विभिन्न सर्वरों पर एकाधिक डीबी में मैपिंग इकाइयों w/o डीबी लिंक
- 30. इकाइयों के लिए लिंक विशिष्ट खंड
वाह .. अच्छा बिंदु – user161433
@ क्रैग - मेरी इच्छा है कि मैं समझ गया कि मैं कुछ घंटों पहले यहां क्या देख रहा था। जो मैंने याद किया वह "ग्राहक में ऑर्डर से था। ऑर्डर" - मैं "डीबी.ऑर्डर्स में ऑर्डर से" समकक्ष कर रहा था, जो कि बिल्कुल अलग है। हालांकि, इसके लिए धन्यवाद। – chris
यह क्वेरी में क्रॉस जॉइन उत्पन्न करता है ... – dudeNumber4