选择EF中的联接表

本文关键字:EF 选择 | 更新日期: 2023-09-27 18:22:50

我有一个表:

Shop (ShopID, ShopName)

和一个表

Campaign (CampaignID, CampaignName)

它们具有多对多的关系。EntityFramework为我创建了一个带有(ShopID, CampaignID)的联接表CampaignShop。但是EF没有公开该表,我不能在LINQ语句中使用它。

如何查询具有给定campaignID的所有商店?

如果我尝试

dbContext.MerchantShop
    .Where(c => c.Campaign.CampaignID == campaignID)

Campaign.CampaignID不工作。

选择EF中的联接表

使用Any扩展方法。

 dbContext.MerchantShop
    .Where(s => s.Campaign.Any(c => c.CampaignID == campaignID));