0
我有休耕SQL-選擇:SQL-選擇轉換爲EF LINQ到實體
select * from tlieferschein l
inner join tbestellung b on l.kbestellung = b.kbestellung
inner join tkunde k on b.tkunde_kkunde = k.kkunde
where b.nStorno = 0
and (select count(*) from tlieferscheinpos x inner join tbestellpos y on x.kbestellpos = y.kbestellpos and x.klieferschein = l.klieferschein) > 0
and b.cBestellNr = '718'
order by l.derstellt desc
現在,我要轉換這個SQL-選擇LINQ。我已經嘗試過休耕,但它不工作:
var result = from l in context.tLieferschein
join b in context.tbestellung on l.kBestellung equals b.kBestellung
join k in context.tkunde on b.tKunde_kKunde equals k.kKunde
where b.nStorno == 0 && (from x in context.tLieferscheinPos join y in context.tbestellpos on x.kBestellPos equals y.kBestellPos && x.kLieferschein equals l.kLieferschein).Count() > 0
orderby l.dErstellt descending
select new {l, b, k};
我希望有人能幫助我,我做錯了什麼。
這是我第一次嘗試寫一個Linq-Query for Entity Framework。
在哪裏表達式的子查詢(計數)有什麼問題... – BennoDual
@ThomasKehl,你是否得到任何異常或輸出不符合預期?還有什麼是cBestellNr字段的數據類型? –
我無法編譯它。在子查詢中加入似乎存在問題。 cBestellNr是int類型的。 – BennoDual