[英]Entity Framework : Group by and Join
我需要從數據庫中獲取一些統計信息,但是我無法使其按需運行。 我有兩個表,任務和狀態,並且我需要獲取每個狀態的任務數,例如,如果我具有狀態“新建”和“已關閉”,並且每個任務只有一個狀態,我想要一個這樣的列表:
New 35
Closed 47
這是我到目前為止的內容:
var statistics = database.Task
.GroupBy(t => t.StatusId)
.Select(g => new { Status = g.Key, Count = g.Count() }).ToList();
這將返回StatusId和Task計數,因此我要做的就是用Status.Name替換StatusId。 基本上,我需要將以上內容與表Status的聯接結合起來,然后獲取Status.Name。 但是在這里我失敗了,有人可以幫助我嗎?
嘗試這個:
var statistics = database.Task
.GroupBy(t => new { Id = t.StatusId, Name = t.Status.Name })
.Select(g => new { StatusId = g.Key.Id, StatusName = g.Key.Name, Count = g.Count() })
.ToList();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.