Как сделать полное внешнее объединение в Linq?

Я унаследовал базу данных, которая была разработана не совсем оптимально, и мне нужно манипулировать некоторыми данными. Позвольте мне привести более распространенную аналогию того, что я должен сделать:

Допустим, у нас естьStudent стол,StudentClass ведение учета всех посещенных им занятий иStudentTeacher стол, в котором хранятся все учителя, которые учили этого ученика. Да, я знаю, что это глупый дизайн, и было бы больше смысла хранить учителя на столе в классе - но это то, с чем мы работаем.

Теперь я хочу очистить данные и найти все места, где у ученика есть учитель, но нет классов, или класс, но нет учителей. SQL таким образом:

select *
from StudentClass sc
full outer join StudentTeacher st on st.StudentID = sc.StudentID
where st.id is null or sc.id is null

Как ты это делаешь в Linq?

Ответы на вопрос(5)

Ваш ответ на вопрос