首頁 > 後端開發 > C++ > 我如何通過persyid分組對象並使用LINQ獲得獨特的汽車模型?

我如何通過persyid分組對象並使用LINQ獲得獨特的汽車模型?

Mary-Kate Olsen
發布: 2025-02-02 00:16:12
原創
988 人瀏覽過

How Can I Group Person Objects by PersonID and Get Unique Car Models Using LINQ?

使用LINQ按PersonID分組

在本例中,您的目標是按PersonID屬性對Person對象列表進行分組,並為每個人檢索唯一的汽車型號列表。為此,您可以使用LINQ提供的GroupBy擴展方法。

以下LINQ查詢演示瞭如何按PersonID分組並提取與每個人關聯的汽車列表:

var results = from p in persons
              group p.car by p.PersonId into g
              select new { PersonId = g.Key, Cars = g.Distinct().ToList() };
登入後複製

說明:

  • group p.car by p.PersonId 操作根據每個唯一的PersonId值創建所有car屬性的分組。
  • 分組的結果是匿名對象的序列,其中每個對象代表一個組,並包含PersonId作為Key和汽車列表作為Cars屬性。 Distinct() 方法確保只返回唯一的汽車型號。

或者,您可以使用Lookup來有效地檢索特定PersonId的汽車列表:

var carsByPersonId = persons.ToLookup(p => p.PersonId, p => p.car);
登入後複製

用法:

// 检索特定人员ID的汽车列表
var carsForPerson = carsByPersonId[personId].Distinct().ToList();
登入後複製

此方法如果查找中不存在指定的人員ID,則返回一個空序列。 Distinct().ToList() 確保返回唯一的汽車型號列表。

以上是我如何通過persyid分組對象並使用LINQ獲得獨特的汽車模型?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板