繁体   English   中英

SQL到LINQ内部JOIN

[英]SQL to LINQ inner JOIN

有人可以帮我在实体框架linq中形成以下SQL查询吗?

AccountApplication表具有两个FK:

AccountApplication [帐户ID]->帐户[帐户ID]

AccountApplication [ApplicationId]-> Application [ApplicationId]

select * from Invoice a inner join AccountApplication b on b.AccountId = 3 and b.ApplicationId = a.ApplicationId

我在EF中没有AccountApplication实体表。

我想要的是属于给定帐户ID有权使用的应用程序的发票清单。 并且accountid的applicationid之间的关系在AccountApplication表中。

带有导航属性的EF类的屏幕截图

有了导航属性,它非常简单

var query = db.Invoices.Where(invoice => invoice.Application.Account
    .Any(account => account.AccountId == 3));

希望您现在明白为什么将它们称为导航属性。 在查询中,您可以使用它们来“导航”(访问)所需的数据,EF可以将它们用作元数据来生成必要的联接。

var records= (from a in context.Invoices join b in context.AccountApplication
              on a.accountId equals b.accountId
              where b.accountId==3
              select new {a.Id,b.Id,....etc});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM