Сгруппировать в linq to llblgen
Это мой устав
private IEnumerable<IGrouping<AccountEntity,AxsEntity>> GetAxsEntitiesForInvoicing(IDataAccessAdapter adapter)
{
var metaData = new LinqMetaData(adapter);
var query = from axsEntity in metaData.Axs
join accountEntity in metaData.Account on axsEntity.AccountId equals accountEntity.AccountId
where
(axsEntity.DateDeleted.HasValue? axsEntity.DateDeleted.Value<DateTime.Now:true) &&
(axsEntity.DateEnd == null || axsEntity.DateEnd > axsEntity.DateRenewal) &&
axsEntity.DateRenewal < RenewalDate // NONE INCLUSIVE DATE
group axsEntity by accountEntity into axsCol
select axsCol;
return query;
Как только я пытаюсь преобразовать это в.ToList(), он выдает ошибку.
Тип 'System.Linq.IQueryable
1[[<>f__AnonymousType0
2 [[Data.Rad.EntityClasses.AxsEntity, Data.Rad, Версия =1.0.4125.30654, Культура = нейтральный, PublicKeyToken=null],[Data.Rad.EntityClasses.AccountEntity, Data.Rad, Версия =1.0.4125.30654, Культура = нейтральный, PublicKeyToken=null]], Model.Rad, версия =1.0.0.0, Culture= нейтральный, PublicKeyToken=null]]'никоим образом не может быть преобразован в тип объекта. Вы использовали оператор let для предложения group by?
Есть какой-либо способ сделать это. Если я сгруппируюсь в памяти, это убивает мой компьютер.
1 ответ
Вы не можете использовать групповой запрос для выборки объектов, так как групповой запрос запрашивает данные группы, а объекты извлекаются непосредственно из таблиц.