LINQ: написать выражение с телом для возврата IQueryable - PullRequest
0 голосов
/ 28 марта 2019

У меня есть следующий код:

Func<ObjectA, ObjectB> selector = item =>
{
    var b = new ObjectB();
    ...
    return b;
};

var result = items.Select(selector);

И этот код возвращает IEnumerable<ObjectB>, но мне нужно IQueryable<ObjectB>

Как я понял, мне нужно сделать Expression

Если я сделаю следующее:

Expression<Func<ObjectA, ObjectB>> selector = item =>
{
    var b = new ObjectB();
    ...
    return b;
};

var result = items.Select(selector);

Это показывает мне ошибку A lambda expression with a statement body cannot be converted to an expression tree

Как я могу это исправить?

...