2015-01-05 51 views
0

我正試圖從需要連接負面結果的表中查詢ID。換句話說,選擇ScacID在連接表ScacSetup中不存在的所有ScacID。此查詢不返回任何結果。Linq2SQL在連接返回負數時選擇ID

var tasksNotAssociated = from scac in db.Scacs 
         where !db.ScacSetupTasks.Any(s => s.ScacTaskID == taskID) 
         group scac by scac.ScacCode into scacNotAssociated 
         select scacNotAssociated.FirstOrDefault(); 

My Table to join and choose where ScacID not present

+1

Left join +'Where leftSide == null'? – MarcinJuraszek

+0

好吧,讓我試試吧。感謝您的快速回答。 –

+0

一個例子會讓你成爲我的英雄。 –

回答

0

大和是我的解決辦法是使用左連接,是由我的導航屬性提供的; ScacSetupTasks。猜猜我應該發佈我的導航屬性並使用Entity Framework進行了標記。好的,這是我發現的工作,並且實質上是一個左連接,其中由MarcinJeraszek建議的左側== null,感謝夥計。

var scacsNotAssociated = db.Scacs.Where(s => s.ScacSetupTasks.Count(sst => sst.ScacTaskID == taskID) == 0);