我有两个表,我通过VS实体数据模型图工具设置。我正在尝试做一个正确的外连接,它不会返回第二个表的结果。
我已经从图表工具设置了0..1到MANY的关系。
当我运行Linq-To-Entities查询时,它仍默认为INNER JOIN。根据我对实体的理解,如果我使用VS建立关系,当我加入表时,它应该根据我提供的关系自动找出连接语法。它似乎没有这样做。
我使用的是EF v1(不是Linq-to-Sql)。
查询我正在运行:
from s in SomeTable
join t in SomeOtherTable on s.ID equals t.ID
select new { s.MyFieldName, t.MyOtherFieldName }
答案 0 :(得分:1)
DefaultIfEmpty()
将在Entity Framework 4中提供帮助:
from s in SomeTable
join t in SomeOtherTable on s.ID equals t.ID into myTemps
from temp in myTemps.DefaultIfEmpty()
select new { s.MyFieldName, temp.MyOtherFieldName }