Linqbuilder Query with OrderBy - PullRequest
       5

Linqbuilder Query with OrderBy

1 голос
/ 12 марта 2010

У меня отношения 1: M.

Я построил динамический запрос, основанный на входных данных пользователей, для возврата списка родительских сущностей вместе со своими детьми (с помощью построителя предикатов:

(успешно выполнено, новый TDataContext (). Ps.Where (предикат)) ...

но нужно упорядочить результаты по полю, найденному только на дочерних объектах.

Я в растерянности: новый TDataContext (). Ps.Where (предикат) .OrderBy (p => p.Cs. ??)

где Ps = родительские отношения с Cs = дочерние объекты

любая помощь приветствуется.

Ответы [ 2 ]

1 голос
/ 12 марта 2010

Один из способов - сначала выбрать детей:

new TDataContext().Ps.Where(predicate).SelectMany(p=>p.Cs).OrderBy(q => q.Name);
0 голосов
/ 12 марта 2010

Попробуйте что-то вроде этого:

new TDataContext().Ps.Where(predicate).OrderBy((<datatype of p> p) => p.Cs.Name)

Вам придется заменить "<тип данных p>" на что угодно. Также вам придется заменить «Имя» на любое поле, по которому вы хотите отсортировать.

...