public void ExampleAggregation() { var customers = new CustomerGenerator().Generate(5); var totalLogins = customers.Sum(c => c.LoginCount); var averageLogins = customers.Average(c => c.LoginCount); var min = customers.Min(c => c.LoginCount); var max = customers.Max(c => c.LoginCount); var aggregate = customers.Aggregate((ac, c) => new Customer() { Id = Math.Max(ac.Id, c.Id), FirstName = ac.FirstName + " " + c.FirstName, LastName = ac.LastName + " " + c.LastName, CreatedDate = new DateTime(Math.Min(ac.CreatedDate.Ticks, c.CreatedDate.Ticks)), ModifiedDate = new DateTime(Math.Max(ac.ModifiedDate.Ticks, c.ModifiedDate.Ticks)), LoginCount = ac.LoginCount + c.LoginCount, IsActive = ac.IsActive || c.IsActive }); }