преобразовать команду TSql в LINQ с ошибкой «невозможно преобразовать в выражение хранилища LINQ to Entities» - PullRequest
0 голосов
/ 11 февраля 2019

Следующая команда возвращает ожидаемый вывод в SQL Server:

select count(*) As CountField 
from
    (select Eductionals.UserID , Max(Eductionals.MaghtaeID) As IDmaghta
from Eductionals 
    group by Eductionals.UserID) Temptable
        inner join MaghtaeTahsilis ON
         Temptable.IDmaghta = MaghtaeTahsilis.ID
        where Temptable.IDmaghta = 3 /* any number */
        group by Temptable.IDmaghta

Я попытался преобразовать приведенный выше код в LINQ:

    var maghtae = _maghtaeTahsili.Where(z => z.Code == MaghtaeCode).FirstOrDefault();
    return _eductional.GroupBy(z=> z.UserID).Max().Where(z => z.MaghtaeID == maghtae.ID).Select(z => z).Count();

После выполнения я обнаружил следующую ошибку:

«IGrouping» не содержит определения для «MaghtaeID», и невозможно найти доступный метод расширения «MaghtaeID», принимающий первый аргумент типа «IGrouping» (если вы пропустили директиву using илиссылка на сборку?)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...