में मेरे पास तीन टेबल हैं। उनमें से दो समान रूप से शामिल होते हैं लेकिन एक को बाईं ओर शामिल होने की आवश्यकता होगी। मुझे linq में ऐसा करने के लिए बहुत सारे कोड मिल रहे हैं लेकिन केवल दो टेबल के बीच।तीन तालिकाओं में शामिल होना और बाएं बाहरी का उपयोग करना
यहां SQL कोड है जिसे मैं LINQ के भीतर फिर से कोड करने का प्रयास कर रहा हूं।
SELECT PRSN.NAME
,CO.NAME
,PROD.NAME
FROM PERSON PRSN
INNER JOIN COMPANY CO ON PRSN.PERSON_ID = CO.PERSON_ID
LEFT OUTER JOIN PRODUCT PROD ON PROD.PERSON_ID = PROD.PERSON_ID;
यहां LINQ कोड का एक स्निपेट है जिसे मैं आधार के रूप में उपयोग कर रहा हूं। मैं LINQ के माध्यम से और बाएं बाहरी जुड़ने के साथ तीसरी तालिका (मेरे नमूना एसक्यूएल में उत्पाद) को एकसाथ टुकड़ा करने में सक्षम नहीं हूं। नमूना दो तालिकाओं के बीच है। किसी भी सुझाव के लिए धन्यवाद।
var leftOuterJoinQuery =
from category in categories
join prod in products on category.ID equals prod.CategoryID into prodGroup
from item in prodGroup.DefaultIfEmpty(new Product{Name = String.Empty, CategoryID = 0})
select new { CatName = category.Name, ProdName = item.Name };
माइकल
... बहुत बहुत धन्यवाद! यह मेरे लिए काम कर रहा है। – MdeVera
कोई चिंता नहीं, दोस्त। मुझे हाल ही में एक ही समस्या थी ... इसे समझने में थोड़ी देर लग गई। साझा करने में प्रसन्नता :) – Beno
@ बेनो आप क्या करते हैं यदि आप प्रत्येक तालिका पर बाएं बाहरी जुड़ने का उपयोग करना चाहते हैं तो एक आंतरिक और एक बाहरी शामिल हो? – mko