Tôi có một danh sách các sự kiện, mỗi sự kiện đều có thuộc tính datetime. Tôi cần chia danh sách thành các danh sách con theo năm. Bí quyết là, danh sách các sự kiện của tôi được lấy từ một cơ sở dữ liệu và có thể thay đổi, vì vậy tôi không thể chỉ mã hóa bộ năm và sắp xếp các sự kiện vào đúng năm. Có cách nào để tôi có thể chia danh sách sự kiện chính của mình thành các danh sách con để trong mỗi danh sách con, mỗi sự kiện có cùng năm không? Vì vậy, tôi sẽ kết thúc với một danh sách phụ của tất cả các sự kiện năm 2010, một danh sách phụ của tất cả các sự kiện 2011, v.v.C# Chia danh sách thành các danh sách con dựa trên giá trị của một tài sản nhất định?
danh sách của tôi được tạo ra như thế này:
foreach (var ev in eventResults)
{
eventsList.Add(new Event()
{
Name = ev.Title,
Month = CultureInfo.CurrentCulture.DateTimeFormat.GetAbbreviatedMonthName(ev.StartDate.Month),
Day = ev.StartDate.Day,
Year = ev.StartDate.Year
});
}
groupby là những gì bạn đang tìm kiếm: http://stackoverflow.com/questions/7325278/group-by-in -linq –