У меня есть некоторый код в асинхронном методе, который использует DataServiceQuery, обернутый в Task.Run, который создает анонимный список на лету.
Это работает нормально.
var companies = await Task.Run(() =>
{
var companyList = (from c in DbContext.Companies
select new { c.ID, Name = c.Name }).ToList();
});
НО я хотел бы использовать метод DataServiceQuery.ExecuteAsync, чтобы мне не требовался Task.Run
Мне не удается найти какой-либо способ преобразования анонимного IEnumerable обратно всписок.
Я могу перечислить коллекцию, но мне нужно найти способ получить список, как в приведенном выше примере.
Да, я знаю, что могу связываться напрямую с коллекцией, но у меня есть некоторые другие причины, по которым яхочу анонимный список, а не анонимный IEnumerable.
var companyListQuery = await ((DataServiceQuery)(from c in DbContext.Companies
select new { c.ID, Name = c.Name })).ExecuteAsync();
foreach (var item in companyListQuery)
{
}