Linq Exception Выражение должно быть MemberExpression - PullRequest
3 голосов
/ 01 февраля 2012

Я работаю над запросом linq и пытаюсь включить сущности на многоуровневый уровень, как указано в Включение Mutilevel в C # Linq .

Поэтому я записываю запрос, например

 query.Include(u => u.Stops.Select(d => d.Address).Select(c => c.City));

, где запрос

IQueryable<SomeEntity> query

, и я получаю исключение

Выражение должно быть MemberExpression

Снимок экрана для моеголица enter image description here Пожалуйста, помогите, спасибо

1 Ответ

0 голосов
/ 01 февраля 2012

Эта перегрузка (расширение?) Include не поддерживает включение через цепочки методов.Однако он поддерживает вложение выражений включения:

query.Include(u => u.Stops.Select(d => d.Address.City));

// this would work too:
categories.Include(u => u.SubCategories.Select(c => c.Items.Select(i => i.Manufacturer)));
// equals
categories.Include("SubCategories.Items.Manufacturer");

Часть Select предназначена только для доступа к элементам элементов свойств типа коллекции.

...