Entity framework 实体框架中的左外联接

Entity framework 实体框架中的左外联接,entity-framework,linq,left-join,Entity Framework,Linq,Left Join,我正在通过连接4个表尝试左外部连接实体框架: var ssss = (from supplier in entity.Supplier_master join city in entity.City_master on supplier.Supplier_City equals city.id join state in entity.State_master on supplier.Supplier_State equals state.id

我正在通过连接4个表尝试左外部连接实体框架:

var ssss = (from supplier in entity.Supplier_master 
            join city in entity.City_master on supplier.Supplier_City equals city.id 
            join state in entity.State_master on supplier.Supplier_State equals state.id 
            join country in entity.Country_master on supplier.Supplier_Country equals country.id 
            where supplier.Supplier_Code.Equals(sup_code) 
            select (new { supplier.Supplier_Code, supplier.Supplier_Name, city.City_Name, state.State_Name, country.Country_Name, supplier.Supplier_TradeMark })).ToList();
以上代码作为内部联接执行,请帮助我找到完成左外部联接的解决方案。

使用“into alias”将2个表联接,然后从该结果中选择

例如:

var query = from supplier in entity.Supplier_master
            join city in entity.City_master on supplier.Supplier_City equals city.id  into citySupplier
            from cs in citySupplier.DefaultIfEmpty()
            select new { your fields) };

无需更改范围变量名称(
city
->
cs
)。最好保持相同的名称
city
,以便查询的其余部分与内部连接相同。EF中的连接最好由EF本身执行。你应该真正定义和使用导航属性。请将你的问题转换为:(a)重写标题,使其不全是大写字母;(b) 把txtspk从身体上剪下来,在心里记下这不是聊天室;(c) 为每个表显示
CREATE TABLE
语句。谢谢。