4
我有一个可观察集合,即所有者和该集合具有子项目,即狗。linq如何从父集包含其他集合中的子项目的集合中选择父项
现在又给了本地狗的另一个集合,我该如何选择所有在我的本地Dogs集合中存在狗的所有者。平等条件将是狗==狗。
我有一个可观察集合,即所有者和该集合具有子项目,即狗。linq如何从父集包含其他集合中的子项目的集合中选择父项
现在又给了本地狗的另一个集合,我该如何选择所有在我的本地Dogs集合中存在狗的所有者。平等条件将是狗==狗。
以下行应该做的伎俩。这将给你至少有一只狗在当地名单上的所有主人。
owners.Where(owner => owner.Dogs.Any(dog => localDogs.Contains(dog)))
如果你只想要所有的狗都在本地列表中的所有者,然后使用以下内容。
owners.Where(owner => owner.Dogs.All(dog => localDogs.Contains(dog)))
微小的差别是Any()
与All()
。
哇。辉煌的单线。优雅简单。谢谢。想想我会做一些嵌套的循环。我也意识到我的问题并不完全清楚,但你推断出正确的含义。 – tim 2010-02-06 19:58:00