سؤال

وعندي استفسار LINQ الذي أحتاج إلى القيام به على وجه التحديد اليسار الانضمام. ولكن عندما أحاول أن ارتكاب ظيفة تخطي امدا على الاستعلام أنها أخطاء ويقول إن تخطي لا يمكن أن يؤديها على استعلام LINQ مع انضمام.

إليك الاستعلام (المتغير التقديم معلمة في وظيفة و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 إرجاع مجموعة النتائج بأكملها إلى قائمة في الذاكرة، لكنه يعمل.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top