Mam następujące klasy:Czy istnieje lepszy sposób, aby ustawić właściwość wspólnego z listą przedmiotów w LINQ
public class Vehicle
{
public string Make { get; set; }
public DateTime DateManufactured { get; set; }
}
Następnie sporządził listę pojazdów takich jak:
var dateTime1 = DateTime.Now.AddDays(-7);
var dateTime2 = DateTime.Now.AddDays(-8);
var dateTime3 = DateTime.Now.AddDays(-9);
var vehicles = new List<Vehicle>
{
new Vehicle {Make = "Ferrari", DateManufactured = dateTime1},
new Vehicle {Make = "Mazda", DateManufactured = dateTime2},
new Vehicle {Make = "Dodge", DateManufactured = dateTime3},
new Vehicle {Make = "Holden", DateManufactured = dateTime1},
new Vehicle {Make = "Chrysler", DateManufactured = dateTime2},
new Vehicle {Make = "Mazda", DateManufactured = dateTime3},
};
Następny Próbowałem uzyskać listę DatesManufactured i dla każdej daty pojazdy, które zostały wyprodukowane w tym dniu.
Więc poszedłem do:
var vehiclesGroupedByDate = vechicles.GroupBy(x => x.DateManufactured)
.Select(x => new
{
x.First().DateManufactured,
Vehicles = x.ToList()
});
To działa grzywny, ale nie jestem pewien co do x.First()
części. Działa, ale nie czuje się dobrze. Czy ktoś wie o bardziej eleganckim sposobie zakodowania tego?