2017-07-17 33 views
1

我在MS SQL Server中有3个相关的表。EF核心左连接,然后内部连接

Database Schema

Table_Bid和Table_Stock与产品编号以Table_Product有关。

我想获取这样的查询实体框架的核心

Select * from Table_Bid 
left join Table_Product on Table_Bid.ProductId = Table_Product.Id 
inner join Table_Stock on Table_Stock.ProductId = Table_Bid.ProductId 

使用.INCLUDE和.ThenInclude我无法获取的记录,而在使用该查询我得到的记录数据

我的C#代码是:

 List<TableBid> bid = 
      _context.TableBid 
      .Include(c => c.Product.TableStock) 
      .ToList(); 

请指导我如何在一次使用实体框架的核心,以获得从所有三个表中的数据。

+0

https://stackoverflow.com/a/39268390/34092是否有帮助? – mjwills

+0

您能否更清楚地指出您的具体问题?难道你没有得到任何结果,或者你得到的结果,但导航属性为空或空列表,他们不应该? –

回答

1

正如@DanielGarcíaRubio指出的那样,用您在问题中提供的少量信息很难回答您的问题。不知道更多,但似乎你正在寻找以下内容:

List<TableBid> bid = 
     _context.TableBid 
     .Include(bid => bic.Product.TableStock) 
     .ThenInclude(stock => stock.Product) 
     .ToList();