LINQ-to-EF left join mit mehreren Zustand

Ich versuche zu replizieren Sie die folgenden SQL-Anweisungen mit LINQ-to-EF, aber ohne Glück.

select * from Role
left join QueueAccess on Role.RoleId = QueueAccess.RoleId and queueId = 361

Hier ist, was ich versucht habe.

var myAccess = (from role in entity.Role.Include(p => p.QueueAccess)
join qa in entity.QueueAccess
on new { rID = role.RoleId, qID = queueId } equals new { rID = qa.RoleId, qID = qa.QueueId }
select role).ToList();

Habe auch versucht diese.

var myAccess = entity.Role.Include(p => p.QueueAccess)
         .Where(x => x.QueueAccess.Any(a => a.QueueId == queueId)).ToList();

Ich immer nur den Datensatz mit der angegebenen queueId, aber keiner der anderen Datensätze, in denen die queueId null ist.

Vielen Dank für Ihre Hilfe.

InformationsquelleAutor Joe | 2010-01-28
Schreibe einen Kommentar