LINQ to Entities Join am DateTime.DayOfWeek

Stellen Sie sich zwei Tabellen vor: Schichten, RANK_S_DAY. Shifts enthält eine ShiftDate-Spalte mit dem WertDateTime und RANK_S_DAY haben einDayOfWeek Säule. Ich muss @ beitret(int)ShiftDate.DayOfWeek equals DayOfWeek. Ich verstehe, warum es nicht funktioniert, bin mir aber nicht sicher, wie ich es ändern kann. Die Ausnahme ist:

Das angegebene Typmitglied 'DayOfWeek' wird in LINQ to Entities nicht unterstützt. Es werden nur Initialisierer, Entitätsmitglieder und Entitätsnavigationseigenschaften unterstützt.

Wie ich es verstehe, kann LINQ nicht übersetzen(int)ShiftDate.DayOfWeek zu etwas, was SQL versteht, Irgendwelche Ideen?

Hier ist der Code:

Shifts = from s in en.Shifts
join j in en.RANK_S_JOB on s.kronos_JobPositions.JobID equals j.JOBNO
join d in en.RANK_S_DAY on (int)s.ShiftDate.DayOFWeek equals d.DAY_OF_WEEK
orderby
 d.RANK,
 j.RANK ascending
select s;

Antworten auf die Frage(8)

Ihre Antwort auf die Frage