Нужно ли делать два включения EF, если на второе включение ссылались в первом включении? - PullRequest
1 голос
/ 13 декабря 2011

У меня есть эта строка кода, которая выбирает статус рабочего процесса, а затем сопоставляет ему следующие статусы рабочего процесса.

status = db.WorkflowStatuses
    .Include(x => x.CurrentMappings.Where(y => y.IsActive && y.NextWorkflowStatus.IsActive))
    .Include(x => x.CurrentMappings.Select(y => y.NextWorkflowStatus).Where(y => y.IsActive))
    .FirstOrDefault(x => x.Id == id);

Мой вопрос: нужен ли мне второй Include, так как я ссылался на NextWorkflowStatus впервый Include?

1 Ответ

2 голосов
/ 13 декабря 2011

Include означает готовую загрузку, а готовая загрузка в EF не поддерживает фильтрацию или упорядочение, поэтому ваш код не будет работать вообще. Вы не можете использовать Where внутри включенного вызова.

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