LINQ按对象列表中的日期分组
本文关键字:日期 对象 列表 LINQ | 更新日期: 2023-09-27 18:17:44
我有一个以下对象的列表:
public class Item
{
public DateTime DliveryDate { get; set; }
public String Order { get; set; }
}
如何使用LINQ将List<Item>
按日期分组?
我使用了下面的查询,但没有在按日期的组中得到异常结果。获得了一个垃圾日期为0001/1/1的List对象
var r = from i in Items
group i by i.DliveryDate into s
select s;
这应该会返回您需要的内容:
var listdategroup = from x in psrAlertLogItems.AsEnumerable<Item>()
group x by x.DliveryDate.Date into s
select s;
也许你的ChangeDateTime包含小时/时间信息,你应该这样做
var listdategroup = from i in psrAlertLogItems
group i by i.DliveryDate.Date into s select s;
只获取日期时间的日期部分
也许这对你有帮助。
var sorted_lists = from sort in lists
group sort by sort.DateInfo into sorted
select sorted;
我得到正确的结果…
您是否尝试过使用扩展方法
var itemsGruopedByDate = Items.GroupBy(item => item.DliveryDate ).ToList();
只是一个选择。
我希望它有用。
欢呼。