Cod*_*ody 2 c# dictionary compare list visual-studio-2010
对于我正在编写的一些代码,我有一个方法可以检查新对象是否具有与所有现有对象相似的属性.
这个方法返回一个Dictionary<int, List<int>>.它们的键是唯一的对象ID,List包含与新对象类似的属性.(Constant.Name,Constant.StartDt等).
现在,有几种不同类型的匹配不会发生.我需要一种方法来比较匹配的各种组合与这些列表中的内容,我需要能够知道匹配了哪个匹配.
因此,我考虑为每个匹配创建一个List,并将每个列表与返回的属性列表进行比较.但是,我知道我之前在Java中做过类似的事情并且它有一个缺陷 - 它与命令相匹配......我只需要知道每个列表是否包含这些项目.
那么,有两个问题:
您可以使用LINQ Intersect方法:
http://msdn.microsoft.com/en-us/library/system.linq.enumerable.intersect.aspx
int[] id1 = { 44, 26, 92, 30, 71, 38 };
int[] id2 = { 39, 59, 83, 47, 26, 4, 30 };
IEnumerable<int> both = id1.Intersect(id2);
foreach (int id in both)
Console.WriteLine(id);
Run Code Online (Sandbox Code Playgroud)