Pergunta

Eu tenho uma consulta LINQ na qual preciso fazer uma junção à esquerda especificamente. No entanto, quando tento comprometer uma função de skip lambda na consulta, erros e diz que o salto não pode ser executado em uma consulta LINQ com uma junção.

Aqui está a consulta (a variável SKIP é um parâmetro na função e o ClientDB é o 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
Foi útil?

Solução

Acabei convertendo isso em uma lista usando o RefesterQuery.tolist (). Não é a melhor solução porque a função tolista retorna todo o conjunto de resultados para uma lista de memória, mas funcionou.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top