我只是試圖返回如果列表中包含任何從列表2名稱/值的真實任何元素:檢查一個列表包含從另一個
這將是我的結構:
public class TStockFilterAttributes
{
public String Name { get; set; }
public String Value { get; set; }
}
List<TStockFilterAttributes> List1 = new List<TStockFilterAttributes>();
List<TStockFilterAttributes> List2 = new List<TStockFilterAttributes>();
這應該返回true:
List1.Add(new TStockFilterAttributes { Name = "Foo", Value = "Bar" });
List2.Add(new TStockFilterAttributes { Name = "Foo", Value = "Bar" });
但是,這將返回false,因爲名稱& &值不匹配:
List1.Add(new TStockFilterAttributes { Name = "Foo", Value = "Bar" });
List2.Add(new TStockFilterAttributes { Name = "Foo", Value = "Foo" });
每個列表可能包含很多不同的值,我只需要知道List1中的任何一個是否與List2中的任何一個匹配。
我已經嘗試使用:
return List1.Intersect(List2).Any();
但這似乎在所有情況下返回false,我假定這是因爲我在列表保持一類,而不是一個簡單的INT /字符串?
'Intersect'工作在默認情況下引用,因爲你創建新的對象,每次,你必須寫自己['的IEqualityComparer'](http://msdn.microsoft.com /en-us/library/ms132151.aspx) –