Я использую в каркасе сущностей несколько GroupJoin для агрегирования списков элементов 'b' для мастера 'a'. Моя проблема заключается в том, что, как только я возвращаю объект query.ToList (), полученный из db, я не могу извлечь элементы IEnumerable, потому что я вне их контекста. Я хотел бы добавить .ToList()
"bList.Tolist ()", но я думаю, что tolist там вызовет немедленное выполнение всего запроса с плохой производительностью. Можете ли вы мне помочь?
class Result
{
IEnumerable<string> Strings { get; set; }
}
using (var context = new TicketingContext())
{
var query = context.A.GroupJoin(context.B,
a => a.IDA,
b => b.IDA,
(a, bList) => new { a, Result = new Result { Strings = bList } }
)
var res = query.ToList();
}
Мой вопрос: если я добавлю tolist (), как в следующем коде, весь запрос будет выполнен? Есть ли поворот?
using (var context = new TicketingContext())
{
var query = context.A.GroupJoin(context.B,
a => a.IDA,
b => b.IDA,
(a, bList) => new { a, Result = new Result { Strings = bList.**ToList()** } }
)
var res = query.ToList();
}