Я прочитал этот вопрос , это та же проблема, что и у меня.К сожалению, помеченное решение не помогло.Я, вероятно, неправильно понимаю что-то действительно очевидное в LINQ.
Я пытаюсь сделать что-то вроде обратного поиска.Мне нужно найти все курсы, на которые зачислен студент.
Вот код ...
public static IQueryable GetCoursesByStudent(string sStudentId)
{
Ld_Sql_ServerDataContext ld_SqlContext = new Ld_Sql_ServerDataContext();
// course-lesson IDs
var activityEnrollmentIds = from ce in ld_SqlContext.YT_STUDENT_COURSE_ENROLLMENT_STATUS
where ce.STUDENT_EMPLOYEE_ID_NR.ToLower() == sStudentId.ToLower()
select ce.TRAINING_ACTIVITY_ID;
// lesson parent course IDs
var parentIds = from c in ld_SqlContext.YT_TRAINING_COMPONENT_RLTNPs
where activityEnrollmentIds.Contains(c.TRAINING_ACTIVITY_ID)
select c.PARENT_TRAINING_ACTIVITY_ID;
// filtered list of courses
var courses = from c in ld_SqlContext.YT_TRAINING_COMPONENTs
where c.TRAINING_ACTIVITY_TYPE_DC == "Course" &&
(activityEnrollmentIds.ToList().Contains(c.TRAINING_ACTIVITY_ID)
|| parentIds.ToList().Contains(c.TRAINING_ACTIVITY_ID))
select c;
return courses;
}
Я связываю результаты с ASP: ListBox и следующей ошибкойDataBind () ...
System.NotSupportedException: запросы с локальными коллекциями не поддерживаются.
Кто-нибудь знает, что происходит?