Включите коллекцию, а затем коллекцию на один уровень вниз
75
12
Я пытаюсь запросить коллекцию и дочернюю коллекцию с помощью EF 7. Вот код:
public async Task < List < Table >> GetAllTable() {
var tableList = await db.Tables.Include(o => o.Checks.Select(i => i.CheckItems)).ToListAsync();
return tableList;
}
Я следую синтаксису здесь MSDN. Однако, когда я запускаю этот код, я получаю следующую ошибку. Кто-нибудь знает, что здесь не так? Спасибо!
InvalidCastException: невозможно использовать объект типа 'Remotion.Linq.Clauses.Expressions.SubQueryExpression' для ввода типа 'System.Linq.Expressions.MemberExpression'. ** Microsoft.Data.Entity.Query.EntityQueryModelVisitor.b__30_2 (< > f__AnonymousType2`2 < > h__TransparentIdentifier0)
спросил(а)
2021-01-28T00:34:07+03:00
4 недели, 1 день назад
добавить комментарий
пожаловаться
Решение
154
Документация, которую вы читаете, предназначена для EF 5.
примечания о дизайне совещаний для EF 7 говорят, что синтаксис этого изменился - попробуйте следующее:
db.Tables.Include(t => t.Checks)
.ThenInclude(c => c.CheckItems)
.ToListAsync()
ответил(а)
2021-01-28T00:34:07+03:00
4 недели, 1 день назад
добавить комментарий
пожаловаться
Ваш ответ