Use LINQ where list of items contains any component in a list of components

前端 未结 2 757
盖世英雄少女心
盖世英雄少女心 2021-01-26 10:18

Using LINQ, how can I find a list of items where it\'s list of components contains a component from another list of components?

Structure:

class Item
{
          


        
2条回答
  •  再見小時候
    2021-01-26 10:55

    It should be the other way around: first the Any and then the Contains. You would like to get all items that have any of there components contained in the components list.

    Also don't use the Select if you'd like to get a list of Item back:

    var result = items.Where(i => i.Components.Any(c => components.Contains(c.Name)));
    

提交回复
热议问题