您可以使用LINQ的WhereOrderByDescending方法来实现您的需求。以下是一个示例代码:

int targetId = 5; // 指定的ID

var result = dbContext.YourDbSet
    .Where(x => x.Id == targetId) // 取出指定ID的数据
    .GroupBy(x => x.Column1) // 按列数据分组
    .Select(g => g.OrderByDescending(x => x.MarkTime).FirstOrDefault()) // 在每个分组中选取最新的那行
    .ToList();

在上面的示例中,我们首先使用Where方法筛选出指定ID的数据,然后使用GroupBy方法按列数据进行分组。接下来,我们使用OrderByDescending方法将每个分组内的数据按照MarkTime降序排序,并使用FirstOrDefault方法选择最新的那行数据。最后,我们使用ToList方法将结果转换为列表。

请根据您的实际情况修改示例代码中的YourDbSetColumn1MarkTime等部分来适应您的数据结构

linq取出dbset里面指定ID的数据同一列数据相同的选择日期marktime更新的那行

原文地址: http://www.cveoy.top/t/topic/it6L 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录