0
可以說我有一個實體模型有三個實體「Item」,「ItemType」和「ItemPart」。我正在嘗試編寫一個查詢,以便爲每個項目類型提取最近的項目(通過item.date),並在查詢中包含這些部分,以便在得到結果後可以使用它們。我寫了一個查詢,看起來像這樣:LINQ Lambda選擇打破包括
IQueryable<Item> results = context.Items
.Include("ItemTypes")
.Include("ItemParts")
.Where(x => x.CurrentItem == true)
.GroupBy(x => x.ItemType).Select(group => group.OrderByDescending(item => item.date).FirstOrDefault());
如果我運行它沒有的GroupBy線一切正常,我可以得到附送的物品。如果我添加GroupBy行,則包含的對象爲空。我究竟做錯了什麼?
編輯:做了一些更多的測試。看來,它實際上是打破包含的選擇。我想他們沒有通過選擇進行。現在找到一種方法來構建可以工作的查詢。
難道你不能只把包含在最後? – usr
我試着把它們放在末尾或select子句中,而且都不是有效的語法。 – William
試着找出它爲什麼不是。包含在ObjectQuery上定義,因此它應該可用。 –
usr