Это рабочий SQL Мне нужно преобразованный в Linq:Преобразование SQL заявление Linq Заявление (3 таблица слева присоединяется + где)
select * from dbo.Pod p
left join dbo.PodEvent pe on p.PodId = pe.Pod_PodId
left join dbo.Event e on pe.Event_EventId = e.EventId
where e.StartDateTime >= '2014-12-24 09:00:00.000'
and e.EndDateTime <= '2014-12-24 14:30:00.000'
Я пытался предложения от различных сообщений весь день, и это лучший Я мог бы сделать, и вопрос в том, что его внутреннее соединение, где мне нужно, чтобы это было левое соединение, так что я могу получить все стручки для данного временного интервала:
List<Pod> pods =
(from p in db.Pods
join pe in db.PodEvents on p.PodId equals pe.Pod.PodId
join e in db.Events on pe.Event.EventId equals e.EventId
where
e.StartDateTime == userInfo.StartDateTime
&&
e.EndDateTime <= userInfo.EndDateTime
select p).ToList();
Благодарности
Попробуйте исследовать «GroupJoin». – Reddog
Спасибо за предложение, я попробовал несколько примеров, но потом у меня проблемы с преобразованием моих результатов в список ... знаете ли вы о каком-либо материале? – OverMars
Возможно, эта ссылка была бы полезной для вас: http://msdn.microsoft.com/en-us/vstudio/ee908647.aspx#leftouterjoin – Vokinneberg