Re[64]: The door
От: MadHuman Россия  
Дата: 18.07.18 07:02
Оценка: +2
Здравствуйте, Sharov, Вы писали:

S>Здравствуйте, vdimas, Вы писали:


V>>Но тело GetEnumerator() реализуется уже провайдером источника данных и почти всегда через нетривиальные преобразования над деревом выражений.


V>>А в случае линка над IEnumerable подставляется уже готовое тело из расширений Enumerable (или своё готовое тело, как показал Синклер).


S> Прикладного программиста, который пишет лямбду как это затрагивает?


в одном случае (для Queryable) аргумент метода будет Expression<Func<TSource, TResult>> selector
а в другом Func<TSource, TResult> selector.
дак вот в 1-м, нужно явно прописать выражение тогда компилятор из него сформирует AST.
во 2-м можно подставить например статический метод который и реализует нужную логику и который может быть где-то ещё переиспользован, но не сможет быть переиспользован в 1-м. точнее может, но в этом случае в AST будет вызов этого метода, про который sql server естественно не знает.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.