2010-08-23 6 views
0

Ceci est ma requête:gauche se joint à LINQ to SQL

Dim bugs = (From b In bugCon.bugs Where sctUserIds.Contains(b.Developer.Value) Order By b.bg_id Select Bug = b, Project = b.project).ToList 

Actuellement ce fait un jointure entre les « bugs » et « projets ». Comment puis-je le transformer en une jointure gauche?

Répondre

0

Je n'ai pas testé cela, mais la requête ci-dessous devrait vous conduire dans la bonne direction. La clé est la jointure ... dans la syntaxe et l'utilisation de DefaultIfEmpty()

from b in context.Bugs 
join p in context.Projects 
on b.projectID equals p.projectID into BugProjects 
where sctUserIds.Contains(b.Developer.Value) 
from bugProjects in BugProjects.DefaultIfEmpty() 
select new { 
    Name = p.Name, 
    ... 
    BugProjects = bugProjects 
}