簡體   English   中英

實體框架:分組和加入

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM