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