我有EF小問題。我正在一張大桌子上進行查詢,並且需要很長時間。我想我找到了原因,但找不到解決辦法;EF不包括在哪裏條款
我的LINQ查詢看起來是這樣的:
IEnumerable<string> o = (from P in Table where P.ITEMID == itemid && P.IMAGESIZE == size select P.PATH);
return o.Any() ? o.FirstOrDefault() : null;
我希望這產生具有where子句的SQL查詢,但它實際上產生的是:
SELECT
[Extent1].[ITEMID] AS [ITEMID],
[Extent1].........
snap 10 columns
FROM [dbo].[TABLE] AS [Extent1]
where子句和選擇(我嘗試只選擇一列)在枚舉之後執行。我想要它做的是用where子句產生一個SQL查詢並只選擇一列。
我在做什麼錯?
剛剛起來,o.Any()? o.FirstOrDefault():null是多餘的。如果未找到匹配項,o.FirstOrDefault()將返回null。 –
什麼是「表」? –
我現在把null放在那裏,我實際上返回了一些東西,但不想在這裏發佈,它不影響查詢 – reinder