I have a list of employees that I build like this:

```
var employees = db.employees.Where(e => e.isActive == true).ToList();

var latestSales = from es in db.employee_sales.Where(x => x.returned == false);

```

Now what I want is a result like this:

```
int employeeId
List<DateTime> lastSaleDates

```

So I tried this, but the query takes a very very long time to finish:

```
var result = 
  (from e in employees
   select new EmployeeDetails
   {
      EmployeeId = e.employeeId,
      LastSaleDates = 
           (from lsd in latestSales.Where(x => x.EmployeeId == e.EmployeeId)
                                   .Select(x => x.SaleDate)
            select lsd).ToList()
   };

```

The above works, but literally takes 1 minute to finish.

What is a more effecient way to do this?