У меня три таблицы. Два из них соединяются поровну, но одному нужно будет соединиться левой. Я нахожу много кода для этого в 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, который Я использую как базу. Я просто не могу собрать третью таблицу (продукт в моем примере SQL) через 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 };
Майкл