Wie mache ich eine vollständige äußere Verknüpfung in Linq?

Ich habe eine Datenbank geerbt, die nicht genau optimal entworfen wurde, und ich muss einige Daten bearbeiten. Lassen Sie mich eine allgemeinere Analogie der Art von Dingen geben, die ich tun muss:

Nehmen wir an, wir haben eineStudent Tisch, aStudentClass Aufzeichnungen über alle Kurse, an denen er teilgenommen hat, und aStudentTeacher Tabelle, in der alle Lehrer gespeichert sind, die diesen Schüler unterrichtet haben. Ja, ich weiß, es ist ein dummes Design und es wäre sinnvoller, den Lehrer auf dem Klassentisch abzulegen - aber damit arbeiten wir.

Ich möchte jetzt die Daten bereinigen und alle Orte finden, an denen ein Schüler einen Lehrer hat, aber keine Klassen oder eine Klasse, aber keine Lehrer. SQL also:

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

Wie macht man das in Linq?

Antworten auf die Frage(5)

Ihre Antwort auf die Frage