EF查询以选择可用的关联实体

时间:2012-07-02 15:42:24

标签: linq entity-framework tsql entity-framework-4 linq-to-entities

如果我知道要搜索什么,我相信我可以谷歌这个,如果这是有道理的。 我正试图了解实体框架,并考虑如何在其中实现一些真实场景。

想象一个带有Person实体和Color实体的简单数据模型,以及一个名为ColorsLiked的关联。

我想使用Color有点像枚举;只有3个定义(红色,绿色,蓝色)。

我想要一个下拉菜单,允许用户将颜色添加到他们喜欢的颜色列表中 - 这一切都很简单。但是,我可以使用哪种查询来仅选择人们不喜欢的颜色?即,当他们选择一种颜色时,它不再可供列表中的选择。

在SQL中,这是一个带有左外连接的简单查询。但我不明白如何在EF中做这样的事情。

任何指导都将不胜感激

1 个答案:

答案 0 :(得分:1)

假设你想要所有人尚未喜欢的颜色,这就是LINQ表达式。

var unlikedColors = allColors.Except(person.ColorsLiked);