Linq OrderBy bricht mit der Navigationseigenschaft ab, die null ist

Mit vier Tischen arbeiten.

Benutzer -> hat grundlegende Benutzerinformationen, einschließlich einer Benutzer-ID und einer Abteilungs-ID (int)
Gruppen -> grundlegende Gruppeninformationen einschließlich einer Gruppen-ID
GroupsMembers -> Tabelle, die die Beziehung zwischen einer Gruppe und ihren Mitgliedern hat, viele zu viele Beziehungen, so dass groupid und userid die Spalten sind
Abteilungen -> grundlegende Abteilungsinformationen einschließlich deptid

Ich habe ein fk von der departmentid in der Benutzertabelle zur deparmtnet Identifikation in der departmentstabelle.

FK von Gruppen groupid zu Gruppenmitglied groupid FK von Benutzern userid zu Gruppenmitglied userid

Auf diese Weise können die Gruppen im edmx über eine Benutzer-Navigationseigenschaft verfügen, die alle Mitglieder der Gruppe enthält.

var grp = grpSource.FirstOrDefault(g => g.GroupID == groupID)
if (grp.GroupID > 0)
{
    var userQuery = from u in grp.Users
                    where !u.Deleted
                    select u;
    userQuery = userQuery.OrderBy(u => u.Department.Name);
}

Ich schließe Users.Department ein.

Das Problem tritt auf, weil Benutzer keine Abteilung haben müssen und die Spalte departmentid nullwertfähig ist. Wenn es Benutzer gibt, für die die departmentid null ist, bricht die orderby ab und sagt, dass u.Department null ist. Wenn keine Abteilungs-IDs null sind, funktioniert dies hervorragend. Ich brauche eine Möglichkeit, basierend auf Department.Name zu sortieren, auch wenn es null Departmentids gibt. Irgendwelche Vorschläge?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage