Почему Entity Framework (4.1) с моделью данных, которую вы можете ожидать за следующим запросом, возвращает InvalidOperationException («Уже существует открытый DataReader, связанный с этой командой, который должен быть закрыт первым») для этого?
((IEnumerable<Company>)db.Companies).SelectMany(x => x.Department).ToList();