如何使用Entity Framework编写连接

时间:2017-06-06 09:38:37

标签: c# sql entity-framework

这是我在SQL中的选择:

select * 
from FactorItems fi 
inner join tblparts p on p.PartsID = fi.PartRef

因为我使用*来获取我的联接中的所有列。

但是这段代码:

var FactorItem = (from FI in context.FactorItems
                  join P in context.tblparts on FI.PartRef equals P.PartsID
                  where (FI.FactorRef == FactorID) 
                  select FI);

我只是获取FI中的数据。我想获取所有数据 - 那么我需要哪些代码呢?

2 个答案:

答案 0 :(得分:2)

使用Linq to Sql代码,您可以返回创建新对象的所有数据:

var FactorItem = (from FI in context.FactorItems
                                  join P in context.tblparts on FI.PartRef equals P.PartsID
                                  where (FI.FactorRef == FactorID) 
                                  select new {FI,P};

答案 1 :(得分:0)

您只返回一个实体FI。您需要返回两个实体.. FIP,例如:

// your rest of query
select new { FI, P}

这样它可以获取所有相关数据