Linqer не конвертирует запрос T-Sql
Я с помощью linqer хочу этот sql to liqn запрос, но у меня есть проблема
select * from Project where Id in (select Top 3 ForeignId from ActivityLog
group by ForeignId order by count(*) desc)
Проблема:SQL не может быть преобразован в LINQ: Поле [Id in (выберите Top 3 ForeignId из группы ActivityLog по порядку ForeignId по количеству (*) desc)] не найдено в текущем контексте данных.
1 ответ
У меня просто была похожая проблема с linqer. Я нашел решение, удаляющее; после SQL-запроса и повторной попытки.
Это может быть проблемой с вашим контекстом.
Смотрите Linqer - хороший инструмент для перехода от SQL к LINQ для получения инструкций по настройке контекста.
Также убедитесь, что файлы *.dbml и *.designer.cs обновлены, и определите таблицу Project, которая будет содержать столбец Id, и таблицу ActivityLog, которая будет содержать столбец ForeignId.
Это может быть ошибкой в используемой вами версии linqer. Я использую 4.0.3 и смог выполнить тот же запрос (настроенный для использования моих таблиц) без проблем.