【发布时间】:2015-02-13 15:48:59
【问题描述】:
如果我有 IEnumerable<int> Values,我可以编写一个 Linq to Entities 查询,如下所示:
DataContext.Answers.Where(a => a.Organization == CurrentUser.Organization ||
Values.Contains(a.QuestionId))
(Values.Contains(a.QuestionId)) 部分是我的问题所关注的。
如果 Values 被实现为:ILookup<string, IEnumerable<int>>Values,我如何重写查询以获取 Answers 其中 Values 包含键 (a.Organization) 并且该键的 IEnumerable 值包含 @ 987654330@?
【问题讨论】:
-
我已经给出了答案,但作为澄清,您确定在该逻辑中您想要
||而不是&&? -
是的,基本前提是
ILookup将是另一个User与CurrentUser共享的值的集合。就我而言,我想获取属于CurrentUser或与CurrentUser共享的所有答案。我正在使用ILookup,因为User共享特定于他们的Organization和Company配对的答案。