Фильтрация вложенных / дочерних коллекций в Entity Framework (версия 1 или 4) - PullRequest
1 голос
/ 26 мая 2010

Как отфильтровать вложенные / дочерние коллекции сущностей при включении их в EF?

Пример: Давайте иметь стандартную ассоциацию клиентов-заказов. Как загрузить всех клиентов и включить в их коллекцию только три последних заказа?

Есть ли что-то вроде AssociateWith функции из L2S для EF?

1 Ответ

2 голосов
/ 26 мая 2010

Нет, к сожалению, API Object Services в Entity Framework не предоставляет способ выборочной загрузки связанных объектов на основе условия.

Одним из способов решения этой проблемы является фильтрация связанных объектов при проецировании результатов в запросе:

context.Customers.Select(c => new
    {
        Customer = c,
        LastOrders = c.Orders
                         .OrderByDescending(o => o.CreatedDate)
                         .Take(3)
                         .ToArray()
    }

Связанные ресурсы:

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...