[英]How can I call Include in Entity Framework after filter query
我在WHERE查詢之后嘗試調用Include並在EF中加載相關實體。 如何在EF中執行此操作? 在SQL中,它看起來像這樣:
SELECT * FROM T1 INNER JOIN ( SELECT * FROM T WHERE ... (filtering data)) as T2 ON T1.A = T2.A (loading data to filtered data)
如果我在SQL Server Profiler中編寫db.Include(..).Where(..)
或db.Where(..).Include(..)
,則將看到下一個查詢:
SELECT ...
FROM T1 AS [Extent1]
INNER JOIN T2 AS [Extent2] ON [Extent1].[A] = [Extent2].[A]
LEFT OUTER JOIN T2 AS [Extent3] ON [Extent1].[A] = [Extent3].[A]
WHERE N'B1' = [Extent1].[B]
但是在此首先執行聯接查詢,然后過濾查詢。
提前致謝
AFAIK不幸的是,實體框架尚不支持此功能(對包含進行過濾)。 您獲得的最接近的結果是執行單獨的查詢。
您可以查看拉里斯拉夫的答案以獲取更多信息。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.