Стремительная загрузка 2-х уровней в рамках сущности с использованием лямбда-выражения - PullRequest
0 голосов
/ 26 сентября 2018

Я работаю с ядром MS Entity Framework и пытаюсь выполнить запрос на загрузку.Для этого у меня есть следующий метод:

public FieldSet GetFieldSetById(int id)
{
    return _context.FieldSet.Include("FieldSetFields.Field").SingleOrDefault(fs => fs.FieldSetId == id);
}

этот код работает нормально, но мне было интересно, как я могу добиться этого, используя лямбда-синтаксис (System.Func).

Пока что яесть этот, который также работает, но не включает в себя «Поле».

return _context.FieldSet.Include(e => e.FieldSetFields).SingleOrDefault(fs => fs.FieldSetId == id);

FieldSetFields представляет собой список, и тогда я не могу вызвать .Field.Как мне этого добиться?

1 Ответ

0 голосов
/ 26 сентября 2018

Использование ThenInclude:

return _context.FieldSet
    .Include(e => e.FieldSetFields)
        .ThenInclude(fsf => fsf.Field)
    .SingleOrDefault(fs => fs.FieldSetId == id);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...