我在我的数据库中有多对多的关系。两个结束表是BlogPost和Item,中间的表是ItemBlogPost。我需要找回与特定项目相关的所有BlogPosts。在SQL我会做这样的:实体框架中的多对多查询4
SELECT BlogPost.*
FROM BlogPost
JOIN ItemBlogPost ON BlogPost.ID = ItemBlogPost.BlogPost_ID
WHERE ItemBlogPost.Item_ID = @Item_ID
在C#我有类似的东西:
IQueryable<BlogPost> itemBlogPosts = from b in connection.BlogPosts
where b.Items == item.ID
orderby b.Content.CreateDate descending
select b;
然而,行标b.Items不给我的项目属性的列表和没有b.ItemBlogPost查看中间表。我也试过b.Items.Contains(item)
,但那也失败了。我如何在LINQ to EF4中完成这项工作?
如果你建立了多对多的关系,它应该只是'item.BlogPosts',不是? – 2011-04-07 20:56:06