Я пытаюсь использовать динамический linq для запроса данных. Теперь у меня есть (нормальный) запрос linq:Следуйте за навигационным свойством в динамическом linq
from u in c.Users
from d in u.Documents
select d.DocumentID
Я ищу эквивалент этого в динамическом linq. Акцент делается на том, как перемещаться из объекта User в объект Document. Я могу сделать что-то вроде:
c.Users.Select("new (UserName)");
Но, конечно, я не могу сделать:
c.Users.Select("new (Documents.DocumentID AS DocumentID)");
Я думал, что я мог бы быть в состоянии сделать что-то вроде:
var q = c.Users.Select("Documents");
q.Select("new (DocumentID)");
Но это не Работа.
Я нашел множество примеров использования свойств навигации в тех случаях, когда предложения. Я мог использовать их в тех случаях, когда клаузулы, но не в выборе.
Я нашел один пример: кто-то делает
c.Users.SelectMany("Documents").Select("new (DocumentID)");
Однако динамический LINQ, кажется, не имеет поддержки SelectMany. По крайней мере, кажется, нет никакой перегрузки для selectmany принятия строки в качестве входных данных, когда включен динамический linq.
Есть ли кто-нибудь, кто может подтолкнуть меня в правильном направлении? Я также приветствовал бы предложения о том, как делать selectmany без динамического linq, если только часть «Документы» и список выбора (в этом случае «DocumentID» является динамическим и может быть определен строковым вводом
Весь смысл использования динамического LINQ, что я не знаю, что имена свойств :) так, используя лямбды не является вариант – PaulVrugt