【发布时间】:2021-05-02 19:22:27
【问题描述】:
我正在尝试使用 LINQ 返回一个 id 列表,给定一个对象列表,其中 id 是一个属性。我希望能够做到这一点,而无需遍历每个对象并提取我找到的唯一 ID。
我有一个 MyClass 类型的对象列表,该类的属性之一是 ID。
public class MyClass
{
public int ID { get; set; }
}
我想编写一个 LINQ 查询来返回这些 Id 的列表。
如果给定一个IList<MyClass>,它会返回一个IEnumerable<int> 的ID,我该怎么做?
我确信一定可以使用 LINQ 在一两行中完成,而不是遍历 MyClass 列表中的每个项目并将唯一值添加到列表中。
【问题讨论】:
-
另外请注意,您在MoreLinq 中有
DistinctBy,这将根据ID为您提供不同的MyClasss。用法:var distincts = list.DistinctBy(x => x.ID);
标签: linq class list c#-3.0 properties