Не удается использовать “Пропустить” в запросе LINQ
Вопрос
У меня есть запрос linq, в котором мне нужно конкретно выполнить левое соединение.Однако, когда я пытаюсь зафиксировать функцию пропуска лямбда в запросе, она выдает ошибку и сообщает, что пропуск не может быть выполнен в запросе linq с соединением.
Вот запрос (переменная skip - это параметр в функции, а clientDB - это datacontext):
Dim questionsQuery = From helpQuestion As HelpQuestion In clientDB.HelpQuestions _
Group Join helpCat As HelpCategory In clientDB.HelpCategories _
On helpCat.ROW_ID Equals helpQuestion.CATEGORY_ID Into helpGroup = Group _
From helpCategory In helpGroup.DefaultIfEmpty() _
Where helpQuestion.DISPLAY_DESK _
Order By helpQuestion.ROW_ID Descending _
Select helpQuestion.ROW_ID, helpQuestion.EMAIL, helpQuestion.FIRST_NAME, helpQuestion.LAST_NAME, helpQuestion.QUESTION, helpQuestion.CREATED, helpQuestion.RESPONSE, helpCategory.CATEGORY_NAME
If skip > 0 Then
questionsQuery = questionsQuery.Skip(skip)
End If
Решение
В итоге я просто преобразовал это в список, используя questionsQuery.ToList().Не лучшее решение, потому что функция ToList возвращает весь результирующий набор в список в памяти, но это сработало.
Не связан с StackOverflow