实体框架4.1链接表查询如何?

时间:2011-06-22 23:02:02

标签: linq entity-framework-4.1

我对Entity Framework比较新,我想做一个包含链接表的查询。有关如何使用LINQ进行基本连接查询的任何建议吗?

实体结构

新闻 NewsID

CommunityNews CommunityID NewsID

社区 社区ID

2 个答案:

答案 0 :(得分:2)

如果您使用EDMX编辑器从数据库生成上下文,并且您已设置了相应的外键约束,那么您应该能够将这三个表添加到上下文中,并且它将创建一个 - NewsCommunity之间的多对多映射。

var newsForCommunity = context.News.Where(
    n => n.Communities.Any(
        c => c.CommunityId == communityId);

答案 1 :(得分:0)

以下是编写查询的另一种方法:

var newsForCommunity = 
(from c in context.Communities
 from n in c.News
 where c.CommunityID == communityID
 select n.NewsID
).ToList();