使用LINQ从DbSet中获取指定ID数据并选择同一列数据相同的最新的记录
{"title":"使用LINQ从DbSet中获取指定ID数据并选择同一列数据相同的最新的记录","description":"本文介绍如何使用LINQ的Where和OrderByDescending方法从DbSet中获取指定ID的数据,并在同一列数据相同的情况下选择最新的记录,并提供示例代码。","keywords":"LINQ, DbSet, ID, 最新记录, Where, OrderByDescending, GroupBy, FirstOrDefault","content":"您可以使用LINQ的Where和OrderByDescending方法来实现您的需求。以下是一个示例代码:\n\ncsharp\nint targetId = 5; // 指定的ID\n\nvar result = dbContext.YourDbSet\n .Where(x => x.Id == targetId) // 取出指定ID的数据\n .GroupBy(x => x.Column1) // 按列数据分组\n .Select(g => g.OrderByDescending(x => x.MarkTime).FirstOrDefault()) // 在每个分组中选取最新的那行\n .ToList();\n\n\n在上面的示例中,我们首先使用Where方法筛选出指定ID的数据,然后使用GroupBy方法按列数据进行分组。接下来,我们使用OrderByDescending方法将每个分组内的数据按照MarkTime降序排序,并使用FirstOrDefault方法选择最新的那行数据。最后,我们使用ToList方法将结果转换为列表。\n\n请根据您的实际情况修改示例代码中的YourDbSet、Column1和MarkTime等部分来适应您的数据结构。"}
原文地址: https://www.cveoy.top/t/topic/qbG8 著作权归作者所有。请勿转载和采集!