c# - 从集合的 List<T> 中获取唯一 ID 记录

标签 c# asp.net linq

我得到了以下代码:

public class Collect
{
     public string name{ get; set; }
     public int id { get; set; }
     public DateTime registerDate { get; set; }
}

public class ControllingMyList
{

    public void prepareList()
    {
        List<Collect> list = new List<Collect>();

        list= loadList();

        //Rest of the opperations
    }
}

考虑到我的 loadList 方法为我返回了许多重复的记录(id 变量),我只想通过 ID 获取一条记录。

Distinct() 函数似乎是一个很好的解决方案,但如果我没记错的话,Distinct() 会过滤对象的所有成员,所以只是因为一秒钟与“registerDate”变量的差异被认为是使其与众不同的标准,即使它具有相同的 ID。

最佳答案

    var list= loadList();

    list = list 
        .GroupBy(i => i.id)
        .Select(g => g.First())
        .ToList();

关于c# - 从集合的 List<T> 中获取唯一 ID 记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8205347/

相关文章:

c# - Linq to XML 查询返回字符串列表

c# - 冬令时/夏令时的 DateTime.ToLocalTime()

java - REST POST 请求不适用于 Java 但适用于 REST 客户端

c# - 如何使用 LINQ 在组内进行排序

.net - 回发数据和 View 状态数据有什么区别

c# - 可以使用 LINQ 从字符串中提取关键字吗?

c# - EF6 : "entity types cannot share table" error without any table splitting

asp.net - DELETE 返回错误 405(方法不允许)我正在使用 React 和 ASP.Net Core

c# - 如何在不单击的情况下在 FileUpload Controller 中选择路径后显示图像

c# - 我将如何返回具有最旧日期时间的顶级 FileInfo 对象?