Qual è il modo più veloce per determinare se un IEnumerable contiene tutti gli elementi di un altro IEnumerable quando si confronta un campo/proprietà di ciascun elemento in entrambe le raccolte?Verificare se un IEnumerable contiene tutti gli elementi di un altro IEnumerable
public class Item
{
public string Value;
public Item(string value)
{
Value = value;
}
}
//example usage
Item[] List1 = {new Item("1"),new Item("a")};
Item[] List2 = {new Item("a"),new Item("b"),new Item("c"),new Item("1")};
bool Contains(IEnumerable<Item> list1, IEnumerable<Item>, list2)
{
var list1Values = list1.Select(item => item.Value);
var list2Values = list2.Select(item => item.Value);
return //are ALL of list1Values in list2Values?
}
Contains(List1,List2) // should return true
Contains(List2,List1) // should return false
Quali viceversa sono le vostre liste? Vuoi controllare se tutti gli elementi di list1 sono nella lista 2 o che tutti gli elementi di list2 sono nella lista 1? –