0
我有3個使用實體集對象相互嵌套的數據集對象。我選擇了數據這樣使用select語句的多級對象上的Linq組
var newList = from s in MainTable
from a in s.SubTable1 where a.ColumnX = "value"
from b in a.Detail where b.Name = "searchValue"
select new {
ID = s.ID,
Company = a.CompanyName,
Name = b.Name,
Date = s.DueDate
Colour = b.Colour,
Town = a.Town
};
並能正常工作,但麻煩的是有在細節對象列表/表中的每個名稱值多條記錄,所以我得到重複行的負荷,因此我只想每個b.Name顯示一條記錄。我試圖把
group s by b.Name into g
之前的選擇,但這樣做似乎停止選擇讓我選擇我想要的列(還有更多,在實踐中)。如何在這種情況下使用group命令,同時仍然保持輸出行爲「平坦」格式?
當然,如果你分組你的結果,你不能得到選擇一個孩子的列,這是因爲可能有多個孩子,你必須指定一個聚合列例如sum,max etx – alejandrobog 2010-04-29 22:42:45
我只從底層子項中選擇1列,其他所有列都來自頂層或中間父層,所以沒有理由說明爲什麼會有任何含糊不清,但我從SQL中看到了什麼意思看法。 – 2010-04-30 07:37:33
是的,每個專欄的分組整理出來 - 你可以把這個答案作爲答案,Alejandrobog,所以我可以相信你正確的答案和相關的要點 – 2010-04-30 11:31:58